Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:

Size: px
Start display at page:

Download "Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:"

Transcription

1 Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: We will come around checking your pre-labs after we introduce the lab Let us know if you have any questions!

2 Lab 2: MSP430 Hero! Week I: A New Lab The Introduction

3 MSP430 Hero! Basic requirements: Play a song on the buzzer and flash the 4 LEDs accordingly Press the buttons at the right times to score points This is a two week lab. You will have this lab session and next week s to work! Feel free to add more features than are in the lab document we may award extra credit! Show the song on the display (like actual Guitar Hero) Multiple songs Other ideas?

4 The Important Parts Functions for reading the Lab board buttons and Launchpad User LEDs See HW#2 and Lecture 8 A data structure to store the song Like with Space Invaders, you can decide how to handle this Must store a pitch and a duration for each note A timer which measures note duration We ll talk about this in class over the next few lectures

5 How to start: Week 1 Like last week, start by making copy of the template project (see instructions in the lab 1 intro) 1.We recommend you start with the small stuff, like creating the functions for the LEDs and buttons It s easier to build and debug these functions now instead of when you re building the main program! Build and test these functions today You can do this by writing a simple main() (no welcome screen, countdown, etc.) that just uses your functions

6 Example test for LEDs and Buttons Here s an example of a way to test your 4 buttons and Launchpad User LED functions These are the 2 LEDs on the Launchpad Write a simple main() that does the following: When button S1 is pressed, turn on user LED1 When button S2 is pressed, turn on user LED2 When button S3 is pressed, turn on BOTH When button S4 is pressed, turn on BUZZER or something Otherwise, the LEDs (and Buzzer) should be off

7 How to start (cont d) 1.After you have your LED and button functions working, try to play some notes using the buzzer. 2.Since we haven t covered interrupts yet, try to create a song using your data structure and play it in main() with software delays between the notes

8 Remember your training Looking back on your last lab, can you do anything differently to make your life easier? Simplifying your control flow? Not using so many globals? Using the debugger? This kitty has developed strong systems programming skills. Remember that we are here to help you become better embedded programmers. Feel free to ask us conceptual questions and we will be happy to teach you! (Please do this before the last day, though!)

9 Good luck and have fun! The rest of these slides contain important info about specific parts of the lab Skim them over at the beginning of lab Look at them when you reach each part or if you have trouble Be sure to look at the Frequently Asked Questions, too! These include helpful tips on C programming and using CCS efficiently! Thank you for listening!

10 Important Stuff: LEDs Are LEDs inputs or outputs? The MSP430F5529 Launchpad User's Guide (class website/useful Links) shows the I/O pin assignments for the user LEDs and buttons If you are curious about how configuserled() from the pre-lab should work, ask us!

11 Important stuff: Buttons Important questions: Are buttons inputs or outputs? Do you need pull up/pull down resistors? Hint: Yes. Which one? Figure it out using the Launchpad schematic & Lecture 8! Which is at the end of MSP430F5529 Launchpad User Guide Once you can answer these questions, to configure the registers see Table 12-1 on page 408 of the MSP430 User s Guide

12 Important Stuff: The Buzzer You can modify BuzzerOn() in peripherals.c to take an argument that represents the frequency of the note to play Don t forget to also modify the function prototype in peripherals.h! How can you modify it to play a specific frequency? Take a look at the comments in BuzzerOn() You ll need a bit of math try it on paper first!

13 Important Stuff: Documentation Everything you need is on the Useful Links page of the course website MSP430 User Guide Detailed Info on Using Chip MSP430 Datasheet Technical Details & Pinout of chip Launchpad User Guide Launchpad details & schematics Lab board Schematics The tricky part is figuring out which one you need

14 Lab 2: MSP430 Hero! Week II: The Lab Strikes Back An Introduction

15 How to start Work on the LED, button, and buzzer functions from Week 1 if you haven t already Now that you have seen timers in lecture, focus on configuring your timer today Hint: Start timer once at the beginning of a game then measure duration using global timer count After that, work on the logic to play the song by checking the global time count and keep score Make sure your timer interrupts work before you leave today! Ask us if you need help!

16 Starting with interrupts Look at the stopwatch example for help with syntax Don t just copy it Make sure you globally enable interrupts! See the lecture notes for instructions. How do you know if your interrupts work? Using the debugger, of course! 1. Put a breakpoint inside your interrupt routine and hit Run 2. If you hit the breakpoint, you know that your timer successfully triggered an interrupt!

17 A note on interrupts As we said in lecture, interrupt routines (ISRs) should be short. Why? For this reason, do NOT do the following in an ISR: Update the display Wait for a button press Wait in a loop for any reason Send a Snapchat If you can t think of a way to design your lab without keeping your ISR short, ask us for help! This kitty will be sad if your ISRs are too long. If you use an ISR improperly, you will lose points!

18 Playing the game The key point here is figuring out how to use the timer interrupts to control the song This allows you to scan for button presses while the song is playing How does the timer let you play notes for precise durations? After that, how can you determine if the player pressed the correct button?

19 Good luck and have fun! Feel free to ask us if you have questions we re here to help! Be sure to look at the FAQs When you are done, make sure you submit your code online like for lab 1 See the Lab 1 intro for instructions Thank you for listening!

20 Frequently Asked Questions (1/?) What's with all the cat pictures? It was really funny once upon a time, trust us! My buttons don t work! Did you configure the buttons to use pull-up resistors? Look at table 12-1 on page 408 of the MSP430 User s Guide for the register configuration! My interrupts aren t firing! Did you globally enable interrupts? See the lecture notes for help! Check your timer config. Make sure you are using the same components and syntax as the stopwatch example.

21 FAQ: Initializing arrays and structs How do I set the value of (or initialize ) an array or struct? Here are some examples:

22 Frequently Asked Questions My program isn t working, and when I pause it says Cannot disassemble address 0xfffe (or similar) This is because your program has jumped to a place in memory that does not contain actual code. This is equivalent to a segfault meaning you are accessing memory you shouldn t. On an MSP430, there s no OS to clean up after a segfault. Instead, your program will experience Undefined Behavior To fix this, check the following: Did you configure the display at the start of your program? Are you accessing beyond the bounds of an array? Are you doing any Bad Things with pointers? If you are having trouble, ask the us for help!

23 Frequently Asked Questions Help! I lost a window in CCS! Reset all of your windows to defaults, go to : View > Reset Perspective I have the warning Function declared implicitly Make sure you aren t missing any #include statements (rand() is in stdlib.h) If the warning is for one of your own functions, you are missing a function prototype. Google function prototypes for help!

24 Frequently Asked Questions I have a vague error saying Errors exist in project or Errors encountered during linking Look in the Console for the full output during compilation. If you scroll up a few lines, you may see some more information about the error. See the next slide for more info

25 Frequently Asked Questions Why does this variable have a value of.? This is because CCS is trying to show it as an ASCII character, but it has a value that isn t a character. You can change the format like this: Right click on the variable here Pick a format to display it here

26 Frequently Asked Questions Using the graphics library See lab 0 for examples especially the comments You can draw lines and shapes See the Graphics Library User Guide on the course website for examples

Welcome to Lab! You do not need to keep the same partner from last lab. We will come around checking your prelabs after we introduce the lab

Welcome to Lab! You do not need to keep the same partner from last lab. We will come around checking your prelabs after we introduce the lab Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: http://users.wpi.edu/~ndemarinis/ece2049/ You do not need to keep the same partner from

More information

Lab 1: Space Invaders. The Introduction

Lab 1: Space Invaders. The Introduction Lab 1: Space Invaders The Introduction Welcome to Lab! Feel free to get started until we start talking! The lab document is located on course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ Be sure

More information

Lab 1: Simon. The Introduction

Lab 1: Simon. The Introduction Lab 1: Simon The Introduction Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: http://users.wpi.edu/~ndemarinis/ece2049/ You do not need

More information

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ece2049_labs.html You do not need to keep

More information

Lab 1 Implementing a Simon Says Game

Lab 1 Implementing a Simon Says Game ECE2049 Embedded Computing in Engineering Design Lab 1 Implementing a Simon Says Game In the late 1970s and early 1980s, one of the first and most popular electronic games was Simon by Milton Bradley.

More information

Lab 1 Implementing a Simon Says Game

Lab 1 Implementing a Simon Says Game ECE2049 Embedded Computing in Engineering Design Lab 1 Implementing a Simon Says Game In the late 1970s and early 1980s, one of the first and most popular electronic games was Simon by Milton Bradley.

More information

ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O

ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O ECE2049-E17 Lecture 4 1 ECE2049 E17 Lecture 4 MSP430 Architecture & Intro to Digital I/O Administrivia Homework 1: Due today by 7pm o Either place in box in ECE office or give to me o Office hours tonight!

More information

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab

By the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab By the end of Class Pseudo-code for Lab 1-2 due as part of prelab Homework #5 on website due before next class Outline Introduce Lab 1-2 Counting Timers on C8051 Interrupts Laboratory Worksheet #05 Copy

More information

Lab 0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio

Lab 0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio ECE2049 Embedded Computing in Engineering Design Lab 0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio In this lab, you will be introduced to the Code Composer Studio

More information

These are notes for the third lecture; if statements and loops.

These are notes for the third lecture; if statements and loops. These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern

More information

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class)

ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) Your homework should be neat and professional looking. You will loose points if your HW is not properly

More information

Programming assignment A

Programming assignment A Programming assignment A ASCII Minesweeper Official release on Feb 14 th at 1pm (Document may change before then without notice) Due 5pm Feb 25 th Minesweeper is computer game that was first written in

More information

A practicalintroduction to embedded programming. Brian Plancher 10/17/2018

A practicalintroduction to embedded programming. Brian Plancher 10/17/2018 A practicalintroduction to embedded programming Brian Plancher Brian_Plancher@g.harvard.edu 10/17/2018 This week s task is simple: 1. Since the boards you made 2 weeks ago are perfect and are still in

More information

ECE2049 Embedded Computing in Engineering Design. Lab #0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio

ECE2049 Embedded Computing in Engineering Design. Lab #0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio ECE2049 Embedded Computing in Engineering Design Lab #0 Introduction to the MSP430F5529 Launchpad-based Lab Board and Code Composer Studio In this lab you will be introduced to the Code Composer Studio

More information

Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018

Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018 CS18 Integrated Introduction to Computer Science Fisler, Nelson Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018 Contents 1 Imperative Programming 1 1.1 Sky High Grades......................................

More information

GDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial

GDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial A Walkthrough with Examples CMSC 212 - Spring 2009 Last modified March 22, 2009 What is gdb? GNU Debugger A debugger for several languages, including C and C++ It allows you to inspect what the program

More information

Illuminating the Big Picture

Illuminating the Big Picture EE16A Imaging 2 Why? Imaging 1: Finding a link between physical quantities and voltage is powerful If you can digitize it, you can do anything (IOT devices, internet, code, processing) Imaging 2: What

More information

CS354 gdb Tutorial Written by Chris Feilbach

CS354 gdb Tutorial Written by Chris Feilbach CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that

More information

ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term Making a Time and Temperature Display

ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term Making a Time and Temperature Display ECE2049: Embedded Systems in Engineering Design Lab Exercise #3 C Term 2019 Making a Time and Temperature Display In this laboratory you will use the MSP430 and several of its peripherals to implement

More information

Sixth lecture; classes, objects, reference operator.

Sixth lecture; classes, objects, reference operator. Sixth lecture; classes, objects, reference operator. 1 Some notes on the administration of the class: From here on out, homework assignments should be a bit shorter, and labs a bit longer. My office hours

More information

For Volunteers An Elvanto Guide

For Volunteers An Elvanto Guide For Volunteers An Elvanto Guide www.elvanto.com Volunteers are what keep churches running! This guide is for volunteers who use Elvanto. If you re in charge of volunteers, why not check out our Volunteer

More information

Lab 4: Interrupts and Realtime

Lab 4: Interrupts and Realtime Lab 4: Interrupts and Realtime Overview At this point, we have learned the basics of how to write kernel driver module, and we wrote a driver kernel module for the LCD+shift register. Writing kernel driver

More information

ENGR 40M Project 3c: Switch debouncing

ENGR 40M Project 3c: Switch debouncing ENGR 40M Project 3c: Switch debouncing For due dates, see the overview handout 1 Introduction This week, you will build on the previous two labs and program the Arduino to respond to an input from the

More information

Smoother Graphics Taking Control of Painting the Screen

Smoother Graphics Taking Control of Painting the Screen It is very likely that by now you ve tried something that made your game run rather slow. Perhaps you tried to use an image with a transparent background, or had a gazillion objects moving on the window

More information

CSCI-1200 Data Structures Spring 2018 Lecture 14 Associative Containers (Maps), Part 1 (and Problem Solving Too)

CSCI-1200 Data Structures Spring 2018 Lecture 14 Associative Containers (Maps), Part 1 (and Problem Solving Too) CSCI-1200 Data Structures Spring 2018 Lecture 14 Associative Containers (Maps), Part 1 (and Problem Solving Too) HW6 NOTE: Do not use the STL map or STL pair for HW6. (It s okay to use them for the contest.)

More information

ECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives:

ECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives: ECGR 4101/5101, Fall 2016: Lab 1 First Embedded Systems Project Learning Objectives: This lab will introduce basic embedded systems programming concepts by familiarizing the user with an embedded programming

More information

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch Purpose: We will take a look at programming this week using a language called Scratch. Scratch is a programming language that was developed

More information

6L00IA - Introduction to Synergy Software Package Short Version (SSP v1.2.0) Renesas Synergy Family - S7 Series

6L00IA - Introduction to Synergy Software Package Short Version (SSP v1.2.0) Renesas Synergy Family - S7 Series 6L00IA - Introduction to Synergy Software Package Short Version (SSP v1.2.0) Renesas Synergy Family - S7 Series LAB PROCEDURE Description: The purpose of this lab is to familiarize the user with the Synergy

More information

Laboratory Assignment #4 Debugging in Eclipse CDT 1

Laboratory Assignment #4 Debugging in Eclipse CDT 1 Lab 4 (10 points) November 20, 2013 CS-2301, System Programming for Non-majors, B-term 2013 Objective Laboratory Assignment #4 Debugging in Eclipse CDT 1 Due: at 11:59 pm on the day of your lab session

More information

Marten van Dijk, Syed Kamran Haider

Marten van Dijk, Syed Kamran Haider ECE3411 Fall 2015 Debugging Techniques Marten van Dijk, Syed Kamran Haider Department of Electrical & Computer Engineering University of Connecticut Email: {vandijk, syed.haider}@engr.uconn.edu Debugging

More information

Week 5, continued. This is CS50. Harvard University. Fall Cheng Gong

Week 5, continued. This is CS50. Harvard University. Fall Cheng Gong This is CS50. Harvard University. Fall 2014. Cheng Gong Table of Contents News... 1 Buffer Overflow... 1 Malloc... 6 Linked Lists... 7 Searching... 13 Inserting... 16 Removing... 19 News Good news everyone!

More information

Getting Up and Running

Getting Up and Running Version 3.2.1 / February, 2011 2 SECTION 1. SYSTEM REQUIREMENTS Getting Up and Running To use VizZle, it s best to have the most current version of Adobe Flash Player. When you download VizZle, Adobe will

More information

Lecture 1: Overview

Lecture 1: Overview 15-150 Lecture 1: Overview Lecture by Stefan Muller May 21, 2018 Welcome to 15-150! Today s lecture was an overview that showed the highlights of everything you re learning this semester, which also meant

More information

Outline for Today. Lab Equipment & Procedures. Teaching Assistants. Announcements

Outline for Today. Lab Equipment & Procedures. Teaching Assistants. Announcements Announcements Homework #2 (due before class) submit file on LMS. Submit a soft copy using LMS, everybody individually. Log onto the course LMS site Online Assignments Homework 2 Upload your corrected HW2-vn.c

More information

EECS150 Lab Lecture 5 Introduction to the Project

EECS150 Lab Lecture 5 Introduction to the Project EECS150 Lab Lecture 5 Introduction to the Project Ian Juch Electrical Engineering and Computer Sciences University of California, Berkeley 9/28/2012 1 Note on Lab4 You should augment the testbenches we

More information

Project Compiler. CS031 TA Help Session November 28, 2011

Project Compiler. CS031 TA Help Session November 28, 2011 Project Compiler CS031 TA Help Session November 28, 2011 Motivation Generally, it s easier to program in higher-level languages than in assembly. Our goal is to automate the conversion from a higher-level

More information

Welcome to the world of .

Welcome to the world of  . Welcome to the world of e-mail. E-mail, short for electronic mail, allows computer users to easily send messages back and forth between acquaintances around the world. There are a variety of ways to do

More information

InfoSphere goes Android Flappy Bird

InfoSphere goes Android Flappy Bird So you have decided on FlappyBird. FlappyBird is a fun game, where you have to help your bird create an App, which to dodge the storm clouds. This work sheet will help you let s you control a generates

More information

Debugging in AVR32 Studio

Debugging in AVR32 Studio Embedded Systems for Mechatronics 1, MF2042 Tutorial Debugging in AVR32 Studio version 2011 10 04 Debugging in AVR32 Studio Debugging is a very powerful tool if you want to have a deeper look into your

More information

HOUR 4 Understanding Events

HOUR 4 Understanding Events HOUR 4 Understanding Events It s fairly easy to produce an attractive interface for an application using Visual Basic.NET s integrated design tools. You can create beautiful forms that have buttons to

More information

Code::Blocks Student Manual

Code::Blocks Student Manual Code::Blocks Student Manual Lawrence Goetz, Network Administrator Yedidyah Langsam, Professor and Theodore Raphan, Distinguished Professor Dept. of Computer and Information Science Brooklyn College of

More information

CSC D84 Assignment 2 Game Trees and Mini-Max

CSC D84 Assignment 2 Game Trees and Mini-Max 0 The Cats Strike Back Due date: Wednesday, Feb. 21, 9am (electronic submission on Mathlab) This assignment can be completed individually, or by a team of 2 students This assignment is worth 10 units toward

More information

1. You re boring your audience

1. You re boring your audience 1. You re boring your audience OK, so you ve convinced your users to visit your landing page. Or even better they ve signed up for your mailing list. That s great! Now that you have their attention, the

More information

Blocky: A Game of Falling Blocks

Blocky: A Game of Falling Blocks ECE220: Computer Systems and Programming Machine Problem 6 Spring 2018 Honors Section due: Thursday 1 March, 11:59:59 p.m. Blocky: A Game of Falling Blocks Your task this week is to implement a game of

More information

COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web

COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web COMP 117: Internet Scale Distributed Systems (Spring 2018) COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web Noah Mendelsohn Tufts University Email: noah@cs.tufts.edu Web: http://www.cs.tufts.edu/~noah

More information

CSCI341. Lecture 22, MIPS Programming: Directives, Linkers, Loaders, Memory

CSCI341. Lecture 22, MIPS Programming: Directives, Linkers, Loaders, Memory CSCI341 Lecture 22, MIPS Programming: Directives, Linkers, Loaders, Memory REVIEW Assemblers understand special commands called directives Assemblers understand macro commands Assembly programs become

More information

Introduction to Embedded Systems. Lab Logistics

Introduction to Embedded Systems. Lab Logistics Introduction to Embedded Systems CS/ECE 6780/5780 Al Davis Today s topics: lab logistics interrupt synchronization reentrant code 1 CS 5780 Lab Logistics Lab2 Status Wed: 3/11 teams have completed their

More information

CS12020 for CGVG. Practical 2. Jim Finnis

CS12020 for CGVG. Practical 2. Jim Finnis CS12020 for CGVG Practical 2 Jim Finnis (jcf1@aber.ac.uk) This week Solution to last week and discussion Global variables and the model The Main Loop pattern States and the State Machine pattern Random

More information

Contents. Page 3: Uploading Contacts. Page 5: Sending a Message. Page 7: Analysing your Message. Page 9: Unsubscribe a Contact. Page 11: Add a Forward

Contents. Page 3: Uploading Contacts. Page 5: Sending a Message. Page 7: Analysing your Message. Page 9: Unsubscribe a Contact. Page 11: Add a Forward How To Guide From sending a message to tracking your URL link, you ll be a texting pro in no time with this handy guide that will take you through the SMS platform step-by-step. Contents Page 3: Uploading

More information

Notebook Assignments

Notebook Assignments Notebook Assignments These six assignments are a notebook using techniques from class in the single concrete context of graph theory. This is supplemental to your usual assignments, and is designed for

More information

Lab 7 Unit testing and debugging

Lab 7 Unit testing and debugging CMSC160 Intro to Algorithmic Design Blaheta Lab 7 Unit testing and debugging 13 March 2018 Below are the instructions for the drill. Pull out your hand traces, and in a few minutes we ll go over what you

More information

Lecture 3: Recursion; Structural Induction

Lecture 3: Recursion; Structural Induction 15-150 Lecture 3: Recursion; Structural Induction Lecture by Dan Licata January 24, 2012 Today, we are going to talk about one of the most important ideas in functional programming, structural recursion

More information

SECTION 2: HW3 Setup.

SECTION 2: HW3 Setup. SECTION 2: HW3 Setup cse331-staff@cs.washington.edu slides borrowed and adapted from Alex Mariakis,CSE 390a,Justin Bare, Deric Pang, Erin Peach, Vinod Rathnam LINKS TO DETAILED SETUP AND USAGE INSTRUCTIONS

More information

Hands-On with STM32 MCU Francesco Conti

Hands-On with STM32 MCU Francesco Conti Hands-On with STM32 MCU Francesco Conti f.conti@unibo.it Calendar (Microcontroller Section) 07.04.2017: Power consumption; Low power States; Buses, Memory, GPIOs 20.04.2017 21.04.2017 Serial Interfaces

More information

Student Success Guide

Student Success Guide Student Success Guide Contents Like a web page, links in this document can be clicked and they will take you to where you want to go. Using a Mouse 6 The Left Button 6 The Right Button 7 The Scroll Wheel

More information

Lesson 2. Introducing Apps. In this lesson, you ll unlock the true power of your computer by learning to use apps!

Lesson 2. Introducing Apps. In this lesson, you ll unlock the true power of your computer by learning to use apps! Lesson 2 Introducing Apps In this lesson, you ll unlock the true power of your computer by learning to use apps! So What Is an App?...258 Did Someone Say Free?... 259 The Microsoft Solitaire Collection

More information

Using Code Composer Studio IDE with MSP432

Using Code Composer Studio IDE with MSP432 Using Code Composer Studio IDE with MSP432 Quick Start Guide Embedded System Course LAP IC EPFL 2010-2018 Version 1.2 René Beuchat Alex Jourdan 1 Installation and documentation Main information in this

More information

Basic Input and Output

Basic Input and Output Basic Input and Output CSE 120 Winter 2018 Instructor: Teaching Assistants: Justin Hsia Anupam Gupta, Cheng Ni, Eugene Oh, Sam Wolfson, Sophie Tian, Teagan Horkan How the Facebook algorithm update will

More information

Emprog. Quick Start Guide. Emprog ThunderBench MSP430 FAQ. Version 1.2. Nov Page 1

Emprog. Quick Start Guide. Emprog ThunderBench MSP430 FAQ. Version 1.2. Nov Page 1 Emprog ThunderBench MSP430 FAQ Version 1.2 Nov 2014 Page 1 TI MSP430 General FAQ This guide is a quick overview and FAQ related to the Texas Instruments MSP430. If you have any question that is not covered

More information

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name

Magic 8 Ball. Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name MPS Magic 8 Ball Lab Exercise Magic 8 Ball Student's name & ID (1): Partner's name & ID (2): Your Section number & TA's name Notes: You must work on this assignment with your partner. Hand in a printer

More information

UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2013

UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2013 Introduction Reading Concepts UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2013 Lab 2 Bouncing LEDs In this lab, you will

More information

Basic Input and Output

Basic Input and Output Basic Input and Output CSE 120 Spring 2017 Instructor: Justin Hsia Teaching Assistants: Anupam Gupta, Braydon Hall, Eugene Oh, Savanna Yee Administrivia Assignments: Animal Functions due today (4/12) Reading

More information

CS 103 Lab The Files are *In* the Computer

CS 103 Lab The Files are *In* the Computer CS 103 Lab The Files are *In* the Computer 1 Introduction In this lab you will modify a word scramble game so that instead of using a hardcoded word list, it selects a word from a file. You will learn

More information

TWO PLAYER REACTION GAME

TWO PLAYER REACTION GAME LESSON 18 TWO PLAYER REACTION GAME OBJECTIVE For your final project for this level for the course, create a game in Python that will test your reaction time versus another player. MATERIALS This lesson

More information

CS103 Handout 29 Winter 2018 February 9, 2018 Inductive Proofwriting Checklist

CS103 Handout 29 Winter 2018 February 9, 2018 Inductive Proofwriting Checklist CS103 Handout 29 Winter 2018 February 9, 2018 Inductive Proofwriting Checklist In Handout 28, the Guide to Inductive Proofs, we outlined a number of specifc issues and concepts to be mindful about when

More information

EiffelStudio the Eiffel IDE

EiffelStudio the Eiffel IDE EiffelStudio the Eiffel IDE Christian Estler ETH Zurich christian.estler@inf.ethz.ch Distributed and Outsourced Software Engineering - ETH course, Fall 2012 1 EiffelStudio an Overview EiffelStudio (ES)

More information

Reviewing gcc, make, gdb, and Linux Editors 1

Reviewing gcc, make, gdb, and Linux Editors 1 Reviewing gcc, make, gdb, and Linux Editors 1 Colin Gordon csgordon@cs.washington.edu University of Washington CSE333 Section 1, 3/31/11 1 Lots of material borrowed from 351/303 slides Colin Gordon (University

More information

Assignment 4: Flight Simulator

Assignment 4: Flight Simulator VR Assignment 4: Flight Simulator Released : Feb 19 Due : March 26th @ 4:00 PM Please start early as this is long assignment with a lot of details. We simply want to make sure that you have started the

More information

Code::Blocks Student Manual

Code::Blocks Student Manual Code::Blocks Student Manual Lawrence Goetz, Network Administrator Yedidyah Langsam, Professor and Theodore Raphan, Distinguished Professor Dept. of Computer and Information Science Brooklyn College of

More information

Problem Score 1 / 27 2 / 19 3 / 16 4 / 14 code check off 5 / 22 /2 Total /100

Problem Score 1 / 27 2 / 19 3 / 16 4 / 14 code check off 5 / 22 /2 Total /100 ME430 Mechatronics Examination I Page 1 Name CM Section You may use only: ME430 Mechatronics Examination I Sept 22nd, 2016 Problem Score 1 / 27 2 / 19 3 / 16 4 / 14 code check off 5 / 22 /2 Total /100

More information

CIS*1500 Introduction to Programming

CIS*1500 Introduction to Programming CIS*1500 Introduction to Programming CIS*1500 Learning to program The basic constructs of programming Programming in the C language Solving real problems Not just about coding! About me??? Some basic things...

More information

Using Virtual EEPROM and Flash API for Renesas MCUs RX600 Series

Using Virtual EEPROM and Flash API for Renesas MCUs RX600 Series Using Virtual EEPROM and Flash API for Renesas MCUs RX600 Series Description: This lab will take the user through using the Virtual EEPROM (VEE) project for RX. The user will learn to use the Virtual EEPROM

More information

Lecture 14: more class, C++ streams

Lecture 14: more class, C++ streams CIS 330: / / / / (_) / / / / _/_/ / / / / / \/ / /_/ / `/ \/ / / / _/_// / / / / /_ / /_/ / / / / /> < / /_/ / / / / /_/ / / / /_/ / / / / / \ /_/ /_/_/_/ _ \,_/_/ /_/\,_/ \ /_/ \ //_/ /_/ Lecture 14:

More information

Intro to Flex Debugging and Profiling

Intro to Flex Debugging and Profiling Intro to Flex Debugging and Profiling Jun Heider RealEyes Media 1 About B. C. D. Sr. Developer / Technical Trainer at RealEyes Media, LLC Flex (2-4) and AIR (0.x, 1.x) Developer from the ColdFusion (4-7)

More information

CS 103 Lab - Party Like A Char Star

CS 103 Lab - Party Like A Char Star 1 Introduction In this lab you will implement a "hangman" game where the user is shown blanks representing letter of a word and then tries to guess and fill in the letters with a limited number of guesses.

More information

University of Hull Department of Computer Science C4DI Interfacing with Arduinos

University of Hull Department of Computer Science C4DI Interfacing with Arduinos Introduction Welcome to our Arduino hardware sessions. University of Hull Department of Computer Science C4DI Interfacing with Arduinos Vsn. 1.0 Rob Miles 2014 Please follow the instructions carefully.

More information

We made it! Java: Assembly language: OS: Machine code: Computer system:

We made it! Java: Assembly language: OS: Machine code: Computer system: We made it! C: car *c = malloc(sizeof(car)); c->miles = 100; c->gals = 17; float mpg = get_mpg(c); free(c); Assembly language: Machine code: get_mpg: pushq movq... popq ret %rbp %rsp, %rbp %rbp 0111010000011000

More information

Installing and getting started with Xcode for Mac OS.

Installing and getting started with Xcode for Mac OS. Installing and getting started with Xcode for Mac OS. 1. Go to the Mac App store. Do a search for Xcode. Then download and install it. (It s free.) Give it some time it may take a while. (A recent update

More information

BASICS OF THE RENESAS SYNERGY TM

BASICS OF THE RENESAS SYNERGY TM BASICS OF THE RENESAS SYNERGY TM PLATFORM Richard Oed 2018.11 02 CHAPTER 9 INCLUDING A REAL-TIME OPERATING SYSTEM CONTENTS 9 INCLUDING A REAL-TIME OPERATING SYSTEM 03 9.1 Threads, Semaphores and Queues

More information

Reading: Davies , 8.3-4, , MSP430x55xx User's Guide Ch. 5,17

Reading: Davies , 8.3-4, , MSP430x55xx User's Guide Ch. 5,17 ECE2049 Homework #3 Clocks & Timers (Due Tuesday 9/19/17 At the BEGINNING of class) Your homework should be neat and professional looking. You will loose points if your HW is not properly submitted (by

More information

16 Sharing Main Memory Segmentation and Paging

16 Sharing Main Memory Segmentation and Paging Operating Systems 64 16 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

More information

Familiarity with data types, data structures, as well as standard program design, development, and debugging techniques.

Familiarity with data types, data structures, as well as standard program design, development, and debugging techniques. EE 472 Lab 1 (Individual) Introduction to C and the Lab Environment University of Washington - Department of Electrical Engineering Introduction: This lab has two main purposes. The first is to introduce

More information

Ch. 11: References & the Copy-Constructor. - continued -

Ch. 11: References & the Copy-Constructor. - continued - Ch. 11: References & the Copy-Constructor - continued - const references When a reference is made const, it means that the object it refers cannot be changed through that reference - it may be changed

More information

Device: PLT This document Version: 3.0. For hardware Version: 4. For firmware Version: Date: April 2014

Device: PLT This document Version: 3.0. For hardware Version: 4. For firmware Version: Date: April 2014 Device: PLT-1001 This document Version: 3.0 For hardware Version: 4 For firmware Version: 2.10 Date: April 2014 Description: LED Matrix Display Driver board PLT-1001v4 datasheet Page 2 Contents Introduction...

More information

Final Project: LC-3 Simulator

Final Project: LC-3 Simulator Final Project: LC-3 Simulator Due Date: Friday 4/27/2018 11:59PM; No late handins This is the final project for this course. It is a simulator for LC-3 computer from the Patt and Patel book. As you work

More information

hw6, BFS, debugging CSE 331 Section 5 10/25/12 Slides by Kellen Donohue

hw6, BFS, debugging CSE 331 Section 5 10/25/12 Slides by Kellen Donohue hw6, BFS, debugging CSE 331 Section 5 10/25/12 Slides by Kellen Donohue Agenda hw4 being graded hw5 may be graded first, for feedback to be used on hw6 hw6 due next week Today hw6 BFS Debugging hashcode()

More information

15 Sharing Main Memory Segmentation and Paging

15 Sharing Main Memory Segmentation and Paging Operating Systems 58 15 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

More information

HOW TO TEXT OUT THE VOTE (TOTV)

HOW TO TEXT OUT THE VOTE (TOTV) HOW TO TEXT OUT THE VOTE (TOTV) Introductions AGENDA HUSTLE Overview of Hustle HOW TO How to start texting voters! We ll be learning about best practices and replying to messages PRACTICE Try it yourself

More information

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #29 Arrays in C

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #29 Arrays in C Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #29 Arrays in C (Refer Slide Time: 00:08) This session will learn about arrays in C. Now, what is the word array

More information

Lecture 4: Memory Management & The Programming Interface

Lecture 4: Memory Management & The Programming Interface CS 422/522 Design & Implementation of Operating Systems Lecture 4: Memory Management & The Programming Interface Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken

More information

Using Panopto in Canvas

Using Panopto in Canvas Using Panopto in Canvas Panopto is a service that allows you to record and store video and audio ( podcasts ) recordings and link them to your Canvas courses. Panopto also supports live streaming of events.

More information

Remaining Enhanced Labs

Remaining Enhanced Labs Here are some announcements regarding the end of the semester, and the specifications for the last Enhanced Labs. Don t forget that you need to take the Common Final Examination on Saturday, May 5, from

More information

HERO LAB ONLINE FOR STARFINDER

HERO LAB ONLINE FOR STARFINDER HERO LAB ONLINE FOR STARFINDER Open Beta BEFORE GETTING STARTED Open Beta Welcome to the Hero Lab Online Open Beta! We ask that you respect LWD by not sharing access or videos with anyone else. While we

More information

2 How to Create a Killer Onboarding Process

2 How to Create a Killer Onboarding Process 2 How to Create a Killer Onboarding Process Onboarding Once you ve developed a new product, it s now time to plan out the onboarding process. Where do I even begin?, you might ask. This guide will take

More information

Device: PLT This document Version: 1. For hardware Version: 1. For firmware Version: Date: 9 May 2014

Device: PLT This document Version: 1. For hardware Version: 1. For firmware Version: Date: 9 May 2014 Device: PLT-2001 This document Version: 1 For hardware Version: 1 For firmware Version: 5.00 Date: 9 May 2014 Description: LED Matrix Display Driver board PLT-2001v1 datasheet Page 2 Contents Introduction...

More information

Best Practices for. Membership Renewals

Best Practices for. Membership Renewals Best Practices for Membership Renewals For many associations, it s easy to get caught up in the marketing efforts associated with attracting new members. But as important as membership growth is, renewal

More information

Fishnet Assignment 1: Distance Vector Routing Due: May 13, 2002.

Fishnet Assignment 1: Distance Vector Routing Due: May 13, 2002. Fishnet Assignment 1: Distance Vector Routing Due: May 13, 2002. In this assignment, you will work in teams of one to four (try to form you own group; if you can t find one, you can either work alone,

More information

Module 5: Triggers and Hotspots

Module 5: Triggers and Hotspots Skills and Drills Learning Module 5: Triggers and Hotspots In This Module You Will Learn About: Triggers, page 88 Hotspots, page 103 And You Will Learn To: Delete Default Triggers, page 88 Add a Trigger

More information

Digital Design and Computer Architecture

Digital Design and Computer Architecture Digital Design and Computer Architecture Lab 6: C Programming Introduction In this lab, you will learn to program an ARM processor on the Raspberry Pi in C by following a tutorial and then writing several

More information

To Update and Maintain Your Team Website

To Update and Maintain Your Team Website To Update and Maintain Your Team Website Welcome to your Centennial Lakes Little League (CLLL) Team Home Page, it's now up to you to begin adding and updating content. You can find everything you need

More information