SoC
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
  • Arm Cortex M3
  • Contact
Reading: Troubleshooting Cortex-M0 DesignStart Eval on Versatile Express Cortex-M Prototyping System
SUBSCRIBE
SoCSoC
Font ResizerAa
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Search
  • Home
  • Arm
  • Arm Cortex M0/M0+
  • Arm Cortex M4
Have an existing account? Sign In
Follow US
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
© S-O-C.ORG, All Rights Reserved.
Arm Cortex M0/M0+

Troubleshooting Cortex-M0 DesignStart Eval on Versatile Express Cortex-M Prototyping System

Graham Kruk
Last updated: October 5, 2023 10:08 am
Graham Kruk 5 Min Read
Share
SHARE

The Cortex-M0 DesignStart evaluation board allows developers to prototype and evaluate designs using the ARM Cortex-M0 processor. However, users may encounter issues when attempting to get started with the DesignStart board and Versatile Express Cortex-M prototyping system. This article provides troubleshooting tips and solutions for common problems.

Contents
Verifying Hardware SetupConfiguring Debug SoftwareTroubleshooting JTAG ConnectionUpdating Hardware DriversChecking Clock and Power SettingsSoftware Debugging StepsTarget Test ProgramsSeeking Additional Help

Verifying Hardware Setup

Before software debugging, first verify the hardware is properly connected:

  • Connect the 20-pin JTAG cable from the Versatile Express board to the Cortex-M0 DesignStart board. Ensure the cable is securely attached at both ends.
  • Check that the Versatile Express board is powered on. The green power LED should be illuminated.
  • Verify the Cortex-M0 DesignStart board is powered. Check for +3.3V power LED.
  • Confirm jumper settings on the DesignStart board are correct for JTAG debugging mode.

Configuring Debug Software

The ARM Development Studio 5 (DS-5) software is recommended for debugging Cortex-M0 designs. Properly configuring the debug settings is important:

  • Launch the DS-5 Debug Configuration wizard to create a new debug configuration.
  • Select the Versatile Express board in the wizard and enable multi-core debugging.
  • Specify the Cortex-M0 target, such as the DesignStart board.
  • Point the DS-5 project to the compiled executable file for your application.
  • Verify debugger settings like JTAG clock speed are appropriate.
  • Save the debug configuration settings for future debugging sessions.

Troubleshooting JTAG Connection

Failure to connect to the target Cortex-M0 processor is a common issue. Try the following to troubleshoot JTAG connectivity:

  • Reseat JTAG cable connections at both ends to ensure a solid connection.
  • Try swapping out the JTAG cable in case the cable is defective.
  • Check for bent or damaged JTAG pins on header connectors.
  • Ensure jumper settings on the DesignStart board enable JTAG mode.
  • Test continuity across JTAG cable using multimeter to verify cabling is OK.
  • Slow down JTAG clock speed in DS-5 debugger settings if using long cable.

Updating Hardware Drivers

Outdated or missing drivers for Versatile Express or DesignStart boards can also cause issues:

  • Install latest Versatile Express board drivers from ARM.
  • Update USB drivers for any required bridges or interfaces.
  • On Linux, ensure up-to-date kernel drivers are loaded for ARM boards.
  • Scan for any unknown devices in system device manager if boards not recognized.
  • Review dmesg logs on Linux to identify driver problems reported at bootup.

Checking Clock and Power Settings

Incorrect clock configurations or power problems can prevent the Cortex-M0 target from operating properly:

  • Verify correct clock sources and frequencies are used for Versatile Express and target boards.
  • Check for missing or damaged capacitors on power supplies.
  • Monitor target power rails during debug session for any dropouts or spikes.
  • Measure target reset and brown-out voltages to ensure in spec.
  • Examine target board schematics for any clock or power design issues.

Software Debugging Steps

If the hardware checks out, investigate software related problems:

  • Examine DS-5 Debugger views during connection attempt to get clues.
  • Use DS-5 steps, breakpoints and RTT printf to isolate code issues.
  • Verify compiled executable is built for Cortex-M0 target.
  • Check linker scripts and vectors for problems.
  • Confirm Cortex-M0 startup code executes properly.
  • Look for stack overflows or memory corruption.

Target Test Programs

Simple test programs can help validate the target Cortex-M0 hardware:

  • Blink LED on timer interrupt to verify basic functionality.
  • Loopback UART or SPI test to check peripherals.
  • Echo ADC inputs on GPIO to validate converters.
  • Exercise I2C or EEPROM to confirm connectivity.
  • Run coremark benchmark for a quick performance test.

Seeking Additional Help

For further assistance, consult these additional resources:

  • DesignStart user forums to find othersfacing similar issues.
  • ARM support and knowledgebase fortechnical troubleshooting info.
  • Versatile Express documentation and user guides.
  • Technical questions on community sites like Stack Overflow.
  • Contact DesignStart or Versatile Expressvendors for hardware-specific help.

By methodically troubleshooting both hardware configuration and software, most issues with the Cortex-M0 DesignStart and Versatile Express prototyping system can be resolved. Seeking help from documentation, forums, or vendor support can also assist in debugging more complex problems.

Newsletter Form (#3)

More ARM insights right in your inbox

 


Share This Article
Facebook Twitter Email Copy Link Print
Previous Article Updating Board Files for Cortex-M0 DesignStart Eval r2p0 on MPS2+
Next Article FPGA Resource Utilization for Cortex-M0 DesignStart Core
Leave a comment Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

2k Followers Like
3k Followers Follow
10.1k Followers Pin
- Sponsored-
Ad image

You Might Also Like

Cortex-M0 Debugging Capabilities (Explained)

The Cortex-M0 is an ultra low power 32-bit ARM processor…

13 Min Read

Achieving Timing Closure for Cortex-M0 on Low-Density FPGAs

Meeting timing closure requirements is essential for successfully implementing Cortex-M0…

6 Min Read

Mapping the Cortex-M0 DesignStart Core to Different FPGA Families

The Cortex-M0 processor from ARM is a popular 32-bit RISC…

6 Min Read

Updating Board Files for Cortex-M0 DesignStart Eval r2p0 on MPS2+

The Cortex-M0 processor from ARM is an extremely popular 32-bit…

5 Min Read
SoCSoC
  • Looking for Something?
  • Privacy Policy
  • About Us
  • Sitemap
  • Contact Us
Welcome Back!

Sign in to your account