Keil Logo

Analog Devices ADuC7000 Signal Example with GNU GCC Compiler

This ARM example runs on the Analog Devices ADuC7024 and shows:

  • Thumb and ARM code intermixed,
  • A Timer Interrupt Service Routine in C,
  • How to generate a Sine Wave Output Signal (on DAC0),
  • Analog-to-Digital Converter (ADC) Input (on ADC0),
  • and Digital-to-Analog Converter (DAC) Output.

This ARM Example may be debugged using only the uVision Simulator and your PC--no additional hardware or evaluation boards are required. The Simulator provides cycle-accurate simulation of all on-chip peripherals of the ADuC7000 device series.

You may create various input signals like digital pulses, sine waves, sawtooth waves, and square waves using signal functions which you write in C. Signal functions run in the background in the simulator within timing constraints you configure. In this example, several signal functions are defined in the included Startup_SIM.INI file.

The Logic Analyzer built into the simulator may be used to monitor and display any variable or peripheral I/O register. It is already configured for this example to show several analog and digital signals.

For users with functional hardware, you may use the Keil ULINK USB-JTAG Adapter to download your application into Flash ROM. ULINK allows also debugging of the application on Target Hardware using the ARM7 Embedded ICE. Refer to http://www.keil.com/ulink for more information.

This project is also available for the Keil CA ARM Compiler. Compared to the GNU Compiler the code size is a lot smaller and the data requirements are minimal.

GNU GCC 3.22 Compiler Memory Requirements

  • Code Size: 13.948 Bytes
  • Data Size: 292 Bytes
  • Stack Size: 372 Bytes (main) + 56 Bytes (irq)

Keil CA ARM Compiler Memory Requirements

  • Code Size: 2.544 Bytes
  • Data Size: 28 Bytes
  • Stack Size: 20 Bytes (main) + 8 Bytes (irq)
ADUC7000_SIGNAL_GNU.ZIP (49K)
Sunday, April 4, 2004
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.