Presentation is loading. Please wait.

Presentation is loading. Please wait.

MCU Software Development- A Step by Step Guide (Using a Real Eval Board) Class 2: An Introduction to the Atmel AVR XMEGA and Explained Eval Board 9/23/2014.

Similar presentations


Presentation on theme: "MCU Software Development- A Step by Step Guide (Using a Real Eval Board) Class 2: An Introduction to the Atmel AVR XMEGA and Explained Eval Board 9/23/2014."— Presentation transcript:

1 MCU Software Development- A Step by Step Guide (Using a Real Eval Board)
Class 2: An Introduction to the Atmel AVR XMEGA and Explained Eval Board 9/23/2014 Warren Miller

2 This Week’s Agenda 9/22/14 An Intro to MCU Software Development 9/23/14 An Intro to the Atmel XMEGA & Eval Bd 9/24/14 Understanding Software Development 9/25/14 Digging Deeper into the Tools 9/26/14 An Example Design- in Detail

3 Course Description Are you interested in learning how to develop software for MCUs? Need a refresher on the newest trends in MCU software tools? Would using a real development board as part of the learning process help? You are in luck! This class will use the Atmel AVR XMEGA Xplained evaluation kit and free downloadable software to take you step-by-step thru the modern MCU software development process.

4 Class #2 An Introduction to the Atmel AVR XMEGA and Explained Eval Board A quick overview of the Atmel XMEGA MCU Family A quick overview of the Atmel XMEGA A3BU Explained Eval Board This class will use the Atmel XMEGA MCU family and the associated evaluation board as an example target for our software development efforts. The interactions between the CPU and many common peripherals will set the stage for designing software efficiently with a wide range MCUs.

5 Todays Goals and Objectives
Understand the architectural features of the Atmel XMEGA MCU Family Understand the key elements of the Atmel AVR XMEGA Eval Kit Hardware Software Example designs Getting started

6 Atmel XMEGA Family of MCUs
A Series: High Performance B Series: LCD Control C Series: USB D Series: Low Power E Series: Small Size The Atmel AVR XMEGA A series is most performance oriented series within the family. It boasts features that cannot be found in any other series. It's perfect for the most demanding applications. The Atmel AVR XMEGA B series is first AVR XMEGA microcontroller (MCU) series to integrate a LCD controller to help reduce design complexity and lower overall system cost. The Atmel AVR XMEGA C series is the entry-level USB-enabled 8/16-bit microcontrollers within the family The Atmel AVR XMEGA D series is the entry-level 8/16-bit microcontrollers targeting power-conscious applications. The Atmel AVR XMEGA E series is the first AVR XMEGA series with 32 pins that are available in the smallest 4mm x 4mm QFN packaging targeting space constrained applications.

7 Atmel XMEGA CPU and Peripherals
CPU and Memory DMA, Interrupt RTC, CRC Analog, Crypto Cap Touch, LCD Timer/Cntr, PWM Communications And more

8 ADC and DAC ADC (12 bit, 2Msps) DAC (12 bit, 1Msps) Up to 4 channels
1 or 2 per device DAC (12 bit, 1Msps) 10 mA output Pure capacitive, Resistance, Combined Atmel® AVR® XMEGA® devices employ advanced analog-to-digital converters (ADCs) that deliver both high speed and high resolution. These ADCs offer up to four conversion channels with different result registers, which can have different setup and configuration processes. This provides easier use since different software modules can access and use an ADC independently. 1 or 2 ADCs in each device 12-bit resolution Up to 2MSPS per ADC Differential and single-ended input Built-in gain stage Offset and gain correction Averaging Over-sampling and decimation Integrated temperature sensor Selected AVR XMEGA devices feature digital-to-analog converters (DACs), which provide two independent channels that can each convert up to 1MSPS. 0 – 4 DAC channels in each device Up to 1MSPS per DAC channel The DAC can drive: Pure capacitive load Pure resistive load Combined load 10 mA output drive strength The ADC and DAC can use both accurate internal and external reference options. Reference buffers inside AVR XMEGA devices eliminate the need for high output current from the external reference.

9 Event System and Custom Logic
Inter peripheral signaling Predictable response Real-time offload Custom Logic Registers, Latches Gates, Mux Custom Protocols The Event System facilitates inter-peripheral signaling for short and 100% predictable response time. This ensures real-time control, and also offloads the CPU because each time an event is used, one interrupt with context switch is eliminated. The figure below and to the left shows the traditional approach—where the peripherals interrupt the CPU when they need to signal something. The figure below and to the right shows the AVR XMEGA approach—where the Event System offloads these tasks from the CPU. Most of the peripherals and the DMA controller are connected to the Event System. The AVR XMEGA E series features an asynchronous peripheral Event System instead. AVR XMEGA E devices feature an innovative XMEGA Custom Logic module (XCL) consisting of two independent 8-bit timers/counters and two lookup tables used for defining glue logic. It is designed to reduce bill of material (BOM) and PCB size as the XCL can replace external circuitry such as delay elements, RS-latches, D-latches, D-flip-flops logic, AND, NAND, OR, NOR, XOR, XNOR, NOT, MUX logic gates. In addition, it can, together with the USART, enable customized communication protocols.

10 Cap Touch and Power Supervisor
Cap Touch Sensing with Qtouch Up to 64 sense channels APIs for Channels/Sensors Power Supervisor POR BOD WDT The Atmel QTouch® Library provides a simple-to-use solution for realizing touch-sensitive interfaces on AVR XMEGA devices. AVR XMEGA microcontrollers provide up to 64 sense channels for capacitive buttons, sliders and wheels. Touch sensing can be added to any application by linking the appropriate QTouch Library for the AVR XMEGA microcontroller. This is done by using a simple set of APIs to define the touch channels and sensors, and then calling the touch-sensing APIs to retrieve the channel information and determine the touch sensor states. All AVR XMEGA devices offer various dedicated functions that can and should be used to ensure safe and reliable operation. Power-on reset (POR) ensures proper power-on and power-down cycling for the device. It works when the supply voltage is very low, and makes sure the device is reset before RAM and register content is lost. Brown-out detection (BOD) monitors the supply voltage and puts the device in reset if the supply voltage drops below the required level. The voltage level to monitor is programmable to various levels between 1.6V and 3.0V, so it will match the minimum application supply voltage. This ensures that program execution does not continue when the supply voltage is too low to guarantee correct operation. The watchdog timer (WDT) monitors program operation and makes it possible to recover from program error situations such as run-away or dead-lock code. The external oscillator failure detection (XOSCFD) function monitors the external clock source and PLL, and will issue an interrupt and switch to the 2MHz internal oscillator if the clock fails. It makes it possible to safely recover from situations where the external clock source fails.

11 Timer/Counter and Clock/Power Mgmt
Up to 8 T/Cs Up to 32 PWMs (4ns) Dead time, Fault protection Clock/Power Mgmt Internal Osc External Osc/Xtal Failure detection Run-time calibration All AVR XMEGA timer/counter modules include pulse-width modulation (PWM) and input capture functionality. There are up to eight timers/counters and 32 PWM channels in one device. Using a high-resolution extension module, it is possible to achieve PWM resolution down to 4 nS. The timers/counters also support more advanced uses that include PWM with high and low side output and dead-time insertion, as well as fault protection modes. The input capture function includes pulse width and frequency measurements, and when two 16-bit timers/counters are cascaded, this also enables 32-bit input capture. The AVR XMEGA clock system includes accurate internal oscillators, as well as external crystal and clock options. Dynamic clock switching and clock scaling can be done to tune accuracy and power consumption to fit the application needs. With a built-in external oscillator, failure detection and automatic run-time calibration of the internal oscillators, the AVR XMEGA offers a safe, reliable and flexible clock system.

12 Low Power Sleep Modes Active, Idle Sleep, Power Save, Power Down
All AVR XMEGA timer/counter modules include pulse-width modulation (PWM) and input capture functionality. There are up to eight timers/counters and 32 PWM channels in one device. Using a high-resolution extension module, it is possible to achieve PWM resolution down to 4 nS. The timers/counters also support more advanced uses that include PWM with high and low side output and dead-time insertion, as well as fault protection modes. The input capture function includes pulse width and frequency measurements, and when two 16-bit timers/counters are cascaded, this also enables 32-bit input capture. The AVR XMEGA clock system includes accurate internal oscillators, as well as external crystal and clock options. Dynamic clock switching and clock scaling can be done to tune accuracy and power consumption to fit the application needs. With a built-in external oscillator, failure detection and automatic run-time calibration of the internal oscillators, the AVR XMEGA offers a safe, reliable and flexible clock system.

13 AVR XMEGA-A3BU Xplained Kit
Key Features Atmel® AVR® ATxmega256A3BU microcontroller FSTN LCD display with 128x32 pixels resolution Battery backup Analog sensors Ambient light sensor Temperature sensor Analog filter Digital I/O Three mechanical buttons Two user LEDs One power LED , One status LED Four expansion headers Touch One Atmel AVR QTouch® button • Memory Atmel AVR AT45DB642D DataFlash® serial flash Footprints for external memory Key Features STM32F303VCT6 microcontroller featuring 256 KB Flash, 48 KB RAM in an LQFP100 package On-board ST-LINK/V2 with selection mode switch to use the kit as a standaloneST-LINK/V2 (with SWD connector for programming and debugging) Board power supply: through USB bus or from an external 3 V or 5 V supply voltage External application power supply: 3 V and 5 V L3GD20, ST MEMS motion sensor, 3-axis digital output gyroscope LSM303DLHC, ST MEMS system-in-package featuring a 3D digital linear acceleration sensor and a 3D digital magnetic sensor Ten LEDs: LD1 (red) for 3.3 V power on LD2 (red/green) for USB communication Eight user LEDS, LD3/10 (red), LD4/9 (blue), LD5/8 (orange) and LD6/7 (green) Two pushbuttons (user and reset) USB USER with Mini-B connector Extension header for all LQFP100 I/Os for quick connection to prototyping board and easy probing

14 Other Kits Xplained Pro Professional evaluation boards featuring auto-identification in Atmel Studio, on-board debugger and standardized extension connectors. Xplained Mini Ultra low-cost platform for evaluating low pin-count parts. Features on-board debugger, access to all device pins, and auto-identification in Atmel Studio.

15 Demo Design

16 For Next Time Download and Install the Design Software
Review the various windows available in the IDE Run the example design Make a simple change and test it out

17 Additional Resources Atmel AVR XMEGA Details Web Page Atmel AVR XMEGA-A3BU Xplained Web Page Order your kit from Digi-Key to follow along in the class- Optional, not a class requirement

18 This Week’s Agenda 9/22/14 An Intro to MCU Software Development 9/23/14 An Intro to the Atmel XMEGA Eval 9/24/14 Understanding Software Development 9/25/14 Digging Deeper into the Tools 9/26/14 An Example Design- in Detail


Download ppt "MCU Software Development- A Step by Step Guide (Using a Real Eval Board) Class 2: An Introduction to the Atmel AVR XMEGA and Explained Eval Board 9/23/2014."

Similar presentations


Ads by Google