Exercise 5: Developing an Embedded Application Write a software application to run on the system that we built in the previous exercise Compile the code.

Slides:



Advertisements
Similar presentations
Introduction to Eclipse. Start Eclipse Click and then click Eclipse from the menu: Or open a shell and type eclipse after the prompt.
Advertisements

Code Composer Department of Electrical and Computer Engineering
Copyright  Oracle Corporation, All rights reserved. 1 Creating an Application: The AppBuilder for Java IDE.
Professional Toolkit V2.0 C:\Presentations - SmartCafe_Prof_V2.0 - bsc page 1 Professional Toolkit 2.0.
Lab7: Introduction to Arduino
Chung-Ta King National Tsing Hua University
Utilizing the GDB debugger to analyze programs Background and application.
My First Nios II for Altera DE2-115 Board 數位電路實驗 TA: 吳柏辰 Author: Trumen.
FIR TYPE-I Lowpass Filtering using TMS320C6711 Floating Point Processor DEMO Presentation Prepared by: Bashir SADEGHI Supervised by: Dr. Erhan A. INCE.
Term Project Overview Yong Wang. Introduction Goal –familiarize with the design and implementation of a simple pipelined RISC processor What to do –Build.
The IDE (Integrated Development Environment) provides a DEBUGGER for locating and correcting errors in program logic (logic errors not syntax errors) The.
1-1 Embedded Software Development Tools and Processes Hardware & Software Hardware – Host development system Software – Compilers, simulators etc. Target.
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Just enough information to program a Blackfin Familiarization assignment for the Analog Devices’ VisualDSP++ Integrated Development Environment.
OllyDbg Debuger.
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
Chapter 2 Software Tools and Assembly Language Syntax.
By: Nadav Haklai & Noam Rabinovici Supervisors: Mike Sumszyk & Roni Lavi Semester:Spring 2010.
Silicon Labs ToolStick Development Platform
CHAPTER 1 XNA Game Studio 4.0. Your First Project A computer game is not just a program—it is also lots of other bits and pieces that make playing the.
1 ENG236: ENG236: C++ Programming Environment (2) Rocky K. C. Chang THE HONG KONG POLYTECHNIC UNIVERSITY.
Computer Programming and Basic Software Engineering 4. Basic Software Engineering 1 Writing a Good Program 4. Basic Software Engineering.
1 3-Software Design Basics in Embedded Systems. 2 Development Environment Development processor  The processor on which we write and debug our programs.
Vintage Computer Hardware 101 Featuring the MITS Altair 680b Bill Degnan.
ADAM2 Single Remocon MCU IDE User’s Manual S/W Integrated Development Environment - Assembler - Simulator - Code Wizard V1.0 Technical Sales Team, ETA.
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
Debugging an Application Lab. Build/Debug Process A start Load Closest Sample “debug” into MULTI editor Cut and Paste Changes into Sample Build Modified.
Active-HDL Interfaces Debugging C Code Course 10.
NIOS II Ethernet Communication Final Presentation
Debugging Visual Basic.NET Programs ► ► Use debugging tools ► ► Set breakpoints and correct mistakes. ► ► Use a Watch and Local window to examine variables.
1 4-Development Environment Development processor  The processor on which we write and debug our programs Usually a PC Target processor  The processor.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Introduction Purpose  This training module provides an overview of debugging features.
Bit-DSP-MicrocontrollerTMS320F2812 Texas Instruments Incorporated European Customer Training Center University of Applied Sciences Zwickau (FH)
ECE 3551 MICROCOMPUTER SYSTEMS 1 Introduction to Visual DSP++
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Altera University Program Cyclone V SoC Course
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
 Seattle Pacific University EE Logic System DesignAlteraBoard-2 Altera Cyclone II (484 Pin BGA) 22 Pins.
© 2000 Morgan Kaufman Overheads for Computers as Components Host/target design  Use a host system to prepare software for target system: target system.
Software Toolchains. Instructor: G. Rudolph, Summer Motivation Desktop Programmers typically write code on the same kind of machine on which it.
Teaching Digital Logic courses with Altera Technology
Getting ready. Why C? Design Features – Efficiency (C programs tend to be compact and to run quickly.) – Portability (C programs written on one system.
Intro Compiler Configuration and Sample Project Walkthrough (For Axiom CME11E9-EVB)
Embedded Systems Design with Qsys and Altera Monitor Program
Using Linux with ARM Tutorial #3.
Chapter 2: The Visual Studio.NET Development Environment Visual Basic.NET Programming: From Problem Analysis to Program Design.
Programming and Debugging with the Dragon and JTAG Many thanks to Dr. James Hawthorne for evaluating the Dragon system and providing the core content for.
1 Using an Integrated Development Environment. Integrated Development Environments An Integrated Development Environment, or IDE, permits you to edit,
Workshop Setup The software/hardware used in this workshop are:
Chapter 3 General-Purpose Processors: Software
Programming and Debugging with the Dragon and JTAG
Lab 1: Using NIOS II processor for code execution on FPGA
Tutorial 2 IDE of Keil for the ARM 7 board(2)
CS4101 Introduction to Embedded Systems Lab 1: MSP430 LaunchPad IDE
Microcontroller Applications
Debugging with gdb gdb is the GNU debugger on our CS machines.
My First Nios II for Altera DE2-115 Board
Using Visual Studio with C#
Quick Start Guide for Visual Studio 2010
DEMO Presentation Prepared by: Bashir SADEGHI Supervised by: Dr
SOPC DE10-Lite Basic Computer Parallel port
Tonga Institute of Higher Education
ECE 3567 Microcontroller Lab
Founded in Silicon Valley in 1984
CSC235 - Visual Studio Tutorial
Software Setup & Validation
Code Composer Essentials 3.0
Debugging.
Presentation transcript:

Exercise 5: Developing an Embedded Application Write a software application to run on the system that we built in the previous exercise Compile the code using Altera Monitor Program Run the program and examine some debugging features of the Altera Monitor Program 1

Application Code (/exercise5/fpga_gpio.c) 2 Read switches and display on LEDs and 7-Segs int main(void)( volatile int * LEDs = (int *) 0xFF200000; volatile int * HEX3_HEX0= (int *) 0xFF200020; volatile int * SW_switch= (int *) 0xFF200040; int hex_conversions[16]= {0x3F,..., 0x71}; while(1) { int value= *SW_switch; *LEDs= value; int first_digit= value & 0xF; int second_digit= (value >> 4) & 0xF; int third_digit= (value >> 8) & 0xF; int hex_value= hex_conversions[first_digit]; hex_value|= hex_conversions[second_digit] << 8; hex_value|= hex_conversions[third_digit] << 16; *HEX3_HEX0= hex_value; }

Application Code (/exercise5/fpga_gpio.c) 3 Read switches and display on LEDs and 7-Segs int main(void)( volatile int * LEDs = (int *) 0xFF200000; volatile int * HEX3_HEX0= (int *) 0xFF200020; volatile int * SW_switch= (int *) 0xFF200040; int hex_conversions[16]= {0x3F,..., 0x71}; while(1) { int value= *SW_switch; *LEDs= value; int first_digit= value & 0xF; int second_digit= (value >> 4) & 0xF; int third_digit= (value >> 8) & 0xF; int hex_value= hex_conversions[first_digit]; hex_value|= hex_conversions[second_digit] << 8; hex_value|= hex_conversions[third_digit] << 16; *HEX3_HEX0= hex_value; }

Application Code (/exercise5/fpga_gpio.c) 4 Read switches and display on LEDs and 7-Segs int main(void)( volatile int * LEDs = (int *) 0xFF200000; volatile int * HEX3_HEX0= (int *) 0xFF200020; volatile int * SW_switch= (int *) 0xFF200040; int hex_conversions[16]= {0x3F,..., 0x71}; while(1) { int value= *SW_switch; *LEDs= value; int first_digit= value & 0xF; int second_digit= (value >> 4) & 0xF; int third_digit= (value >> 8) & 0xF; int hex_value= hex_conversions[first_digit]; hex_value|= hex_conversions[second_digit] << 8; hex_value|= hex_conversions[third_digit] << 16; *HEX3_HEX0= hex_value; }

Program Behaviour 5

6

Step 1: Start Altera Monitor Program 7

Step 2: Create a New Project 8 Sets up the Altera Monitor Program  Select files to work with  Specify target system

Step 2.1: Specify name, directory and architecture 9

Step 2.2: Select a Custom System 10

Step 2.3: Select Program Type 11

Step 2.4: Add Source File 12

Step 2.5: Set Board Connection and Select Processor 13

Step 2.6: Leave Default Memory Settings 14

Step 3: Program the FPGA with the Custom System 15

Step 4: Compile and Load 16 Compile your C language program Load the compiled code into the memory on the DE1-SoC board

Step 5: Examine the Window Contents 17

Step 5: Examine the Window Contents 18 Disassembly

Step 5: Examine the Window Contents 19 Registers

Step 5: Examine the Window Contents 20 Info & Error Msgs

Step 5: Examine the Window Contents 21 Terminal

Step 6: Run the Program and Toggle Switches on Board 22

Step 7: Pause the Processor 23

Step 8: Go to 0xff in Memory Window

Step 9: Read PIO Registers (Right Click) 25

Step 9: Examine Values 26

Step 10: Alter the Red LED PIO Register (Double Click) 27

Step 11: Test Other Features 28 Single Step

Step 11: Test Other Features 29 Breakpoints

Step 11: Test Other Features 30 Restart Program

Step 12: Disconnect 31