AGH University of Science and Technology Cracow Department of Electronics
|
|
- Shona Rice
- 6 years ago
- Views:
Transcription
1 AGH University of Science and Technology Cracow Department of Electronics Microcontrollers Lab Tutorial 2 GPIO programming Author: Paweł Russek ver /12
2 1. Objectives In this tutorial, student will extend his/her understanding of General Purpose IO structure and programming in NXP Kinetis L family of microcontrollers. The new features of GPIOs will be presented, including Input functionality. To extend the features of the FRDM-KL25Z board, we will use a kit of basic peripheral devices, such as LEDs, push buttons, keyboard, and 4 7-segment LED display. Afterwards, the switch bouncing problem will be introduced. You will write the debouncing code to mitigate it. Also, debugging, a very important feature of the Keil uvision programming environment, will be demonstrated. 2. Basic Peripherals Board The microcontrollers need the peripheral devices to act. There is a variety of peripheral boards available, but we need a customized that fits the Microprocessors Laboratory course. The schematic of the Basic Peripheral Board is given in the figure. You will find the Connection Headers, LEDs, 4 7-Segment LED display, matrix keyboard, push-buttons, and button-pressed sensing circuit (D21-D24, R2). 2/12 A schematic Basic Peripheral Board for Microcontrollers Laboratory
3 2.1. Connection headers JP1 JP2 JP3 JP4 JP5 JP6 JP7 The JP1 shunt is used to convert 4x4 matrix keyboard to 4 push button interface. If it is closed, switches S1, S2, S3, S4 can be connected directly to the microcontroller's port pins via the C1, C2, C3, and C4 signals and sensed immediately. When it is open micro swich matrix form a keyboard which requires a special procedure to detect a pressed button (see laboratory tutorials for details). The JP2 pin can be used as a source of logical signal (active low) to detect a button press event on the matrix keyboard. The JP3 header is a LED connector. Apply high voltage signal to light a selected LED. The JP4 header is a 4x4 matrix keyboard connector. The C1, C2, C3, and C4 signals are connected to the matrix columns and R1, R2, R3, and R4 are connected to matrix rows. To detect active column, apply low voltage signal to R(1..4) and pull-up C(1..4) with internal microcontroler's ports resistors. To detect active row, apply low voltage signal to C(1..4) and pull-up R(1..4) with internal microcontroller's ports resistors. When the row and column is detected the button is known. The JP5 header is the 7-segment display cathodes connector. Apply low voltage to light a corresponding segment for an active digit. See also the JP6 description. The JP6 header is the 7-segment display common anodes connector. Apply low voltage to actvate a corresponding digit. See also the JP5 description. The JP7 header is the power supply for the board. You usually connect 'VCC' to the '3.3V' or '5.0V' power pin, and 'GND' to the 'GND' pin of FRDM-K25Z The PCB of the peripheral board It is possible to create a peripheral circuit given in figure above using a breadboard or a universal PCB, however, for the convenience a printed circuit was designed and provided for this tutorial. The picture of the proposed PCB for the peripheral board is given in the figure. The PCB for Basic Peripheral Board 3/12
4 3. GPIO functionality In this section, we will broaden the information about Kinetis L GPIOs that has already been provided in Tutorial 1: C language for microcontroller of this course. In the previous tutorial the GPIOx_PDDR (Port Data Direction Register) and GPIOx_PDOR (Port Data Output Register) were familiarized. The PDOR register is a basic register that provides a complete functionality for the parallel output peripheral. However, for the programmers convenience, there are also extra registers that control the output. There is the GPIOx_PSOR, GPIOx_PCOR, and GPIOx_PTOR registers for each GPIO port. GPIOx_PSOR (Port Set Output Register) GPIOx_PCOR (Port Clear Output Register) GPIOx_PTOR (Port Toggle Output Register) Writing to this register will update the contents of the corresponding bit in PDOR. '0': Corresponding bit in PDORn does not change. '1': Corresponding bit in PDORn is set to logic 1. Writing to this register will update the contents of the corresponding bit in PDOR. '0': Corresponding bit in PDORn does not change. '1': Corresponding bit in PDORn is cleared to logic 0. Writing to this register will update the contents of the corresponding bit in the PDOR. '0': Corresponding bit in PDORn does not change. '1': Corresponding bit in PDORn is set to the inverse of its existing logic state. The table shows additional the registers associated with GPIOx. After we configure the Direction register for output, we can use Set Out, Clear Out, and Toggle Out registers. Those registers make it easier to turn on or off a single pin or a few pins without affecting the other pins. For example, writing a value 4 (0100 in binary) to PCOR will turn off bit 2 of that port without modifying any other pins. For parallel Input functionality, the Data Input register (GPIOx_PDIR) exists for each port A to E. After Direction register (GPIOx_PDIR) is configured for input, the Data Input register is used to bring data into CPU from the pins. We can connect an external SW to the board and experiment with the concept of inputting data via a port. Depending on how we connect an external SW to a pin, we need to enable the internal pull-up or pull-down resistor for a pin. See figure below for connecting external switches to the microcontroller. 4/12
5 Connecting push buttons to the microcontroller Using the PORTx_PCRn register, not only we select the alternate I/ O function of a given pin, we can also control its internal Pull-up (or Pull-down) resistor. The PE (pull enable) bit of the PORTx_PCRn is used to enable the internal Pull resistor option. If PE = 1, then we use the PS bit (pull select) to enable the pull-up (or pull-down) option. See the figure below. PS and PE bits of PORTxPCRn 5/12
6 4. Bit naming convention in the MKL25Z4 header. Microcontrollers programming often requires setting individual register bits. Each bit has own functionality and has to be manipulated independently. Access to single bits requires the knowledge of the bit position within the host register. The bit position can be look up in the data sheet, however, programmers can use names of the bits that are defined in MKL25Z4 header, and that definitions carry a position of the pit in the register. For example: The position of bit PE of PCR register is defined as PORT_PCR_PS_MASK. First the name of the module comes (PORT), then the name of the register (PCR), and finally the name of bit (PS). As the definition is used to modify (mask) registers, there is always MASK suffix to the name. More examples: Bit PE of PCR register is PORT_PCR_PS_MASK Bit PORTA of SCGC5 is defined as SIM_SCGC5_PORTA_MASK The same way, we can use pre-definied values to mask bit fields (like MUX of PCR). Bit field MUX of PCR is PORT_PCR_MUX_MASK Furthermore, the MKL25Z header defines macros that allow programmers to set bits and bit fields conveniently. The macros provide the values that result in setting the corresponding bits. Example: //Set the PORTA bit of SMGC5 SIM->SCGC5 =SIM_SCGC5_PORTA(1); //Set multiplexer of pin 10 in Port A for the third alternate function PORTA->PCR[10] =PORT_PCR_MUX(3); If you have doubts what is the name of the certain bit mask or macro, you can inspect MKL25Z.h file (hoover the mouse cursor over the MKL25Z.h name in the uvision code editor, right click the mouse button, and select Open document... in the pop-up menu). 6/12
7 Exercise 4.1 Find the names of the macros for the corresponding bits and bit fields. Bit SBNS (Stop Bit Number Select) of the BDH register in the UART0 module. That bit determines whether data characters are one or two stop bits in serial communication. Bit field MODE of the CFG1 register in the ADC module. The bits select the ADC resolution mode (8-bit, 10-bit, 12-bit or 16-bit). 5. Toggling LEDs application Exercise Connect the FRDM-KL25Z board to the Basic Peripheral Board according the figure given below. Connection of FRDM25Z to the Peripheral Board 2. Create a new uvision project Toggling_LEDs. Remember to keep your projects in a separate directory. Create a new folder Toggling_LEDs for the project. 3. In uvision editor, create a new file main.c in the source file folder and copy the program code that is given below. 7/12
8 /* * Name: main.c * Purpose: Toggling_LEDs application * Author: Student * */ #include "MKL25Z4.h" /*Device header*/ #define LED_1 0 #define SW_1 0 int main() { //Enable clock for Port B and Port D SIM->SCGC5 =SIM_SCGC5_PORTB(1) SIM_SCGC5_PORTD(1); //Configure Port B pin 0 as GPIO, Output PORTB->PCR[LED_1] =PORT_PCR_MUX(1); PTB->PDDR =(1<<LED_1); //Configure Port D pin 0 as GPIO, Input, Pull-up resistor PORTD->PCR[SW_1] =PORT_PCR_MUX(1) PORT_PCR_PE(1) PORT_PCR_PS(0); PTD->PDDR&=~(1<<SW_1); while(1){ if( (PTD->PDIR & (1<<SW_1))==0){ if(ptb->pdor & (1<<LED_1)) PTB->PDOR&=~(1<<LED_1); else PTB->PDOR =(1<<LED_1); } } } while((ptd->pdir & (1<<SW_1))==0); //Wait for SW_1 release 4. Compile, Download, and Run Toggling_LEDs application on a FRDM-KL25Z board. The LED D1 should toggle when you press the SW1 button 5. Modify the code of Toggling_LEDs to toggle all four LEDs D1 to D4, while pressing the corresponding switches S1 to S4. Try to optimize your code to use as few C statements as possible. Compare the Code size with the results of your colleagues. Size of the code appears in the Built Output window after code building process. Program Size: Code=... 8/12
9 6. Keil uvision debugger A debugger is a program that is used to test and debug other programs (the "target" program). The µvision Debugger can be configured as a Simulator or as a Target Debugger. The Simulator is a software-only product that simulates most features of a microcontroller without the need for target hardware. The Target Debugger is a hybrid product that combines µvision with a hardware debugger interfacing to your target system. To debug programs running on target hardware, check Use <Hardware Debugger> on the right side of the Debug dialog. When you start a debug session, µvision loads the application, executes the startup code, and, if configured, stops at the main C function. When program execution stops, µvision opens a Text Editor window, with the current source code line highlighted, and a Disassembly Window, showing the disassembled code. Debug menu Description Use the Start/Stop Debug Session command of the Debug Toolbar to start or stop a debugging session. To Start the program execution select the Run command from the Debug Toolbar or from the Debug Menu To Stop the program select Stop from the Debug Toolbar or from the Debug Menu To Reset the microcontroller Select Reset from the Debug Toolbar or from the Debug Reset CPU Menu To step through the program and into function calls use the Step command from the Debug Toolbar or Debug Menu. To step through the program and over function calls use the Step Over command from the Debug 9/12
10 Toolbar or Debug Menu To step out of the current function use the Step Out command from the Debug Toolbar or Debug Menu Breakpoints In µvision, you can set breakpoints to stop (break/pause) the program to examine its current state. The break can be ordered at some event or at specified instruction by means of a breakpoint. To set execution breakpoints in the source code or in the Disassembly Window, open the Context Menu and select the Insert/Remove Breakpoint command. You can also double-click the gray sidebar of the Editor Window or Disassembly Window to set a breakpoint, or use the breakpoint buttons of the File Toolbar. Breakpoints are visualized in the Editor and the Disassembly Window, and they are denote by the red dot Watches Press to display Watch windows. By default, Watch Windows consist of four page tabs: the Locals to view variables of the current function, two Watch pages for personalized watchpoints, and the Call Stack showing the program tree. Through the Watch Window, you can view and modify program variables. Nested function calls are listed in this window as well. The content is updated automatically whenever you step through the code in Debug Mode and the option View > Periodic Window Update is set. In contrast to the Locals Window, which displays all local function variables, the Watch Window displays user-specific program variables. 10/12
11 Define watchpoints to observe variables, objects, and memory areas affected by your target program. Watchpoints can be defined in two Watch pages. The Locals Window contains items of the currently executed function. Items are added automatically to the Locals Window. There are several ways to add a watchpoint: In any Watch Window, use the field <double-click or F2 to add> Double-click an existing watch-point to change the name In Debug Mode, open the Context Menu of a variable and use Add <item name> to Watch Window. µvision automatically selects the variablename beneath the mouse pointer. You can also mark an expression and add it to the Watch Window. Modify local variables and watchpoint values by double-clicking the value you want to change, or click on the value and press F2. Remove a watchpoint by selecting it and press the Del key. Exercise 6.1 Set a breakpoint somewhere in the Toggling_LEDs code. Start debugger and Run the program. When program breaks, step through it. Add some Watch Continue stepping while watching your Watch 7. Switches debouncing When a mechanical switch is closed or opened, the contacts do not make a clean transition instantaneously, rather the contacts open and close several times before they settle. This event is called contact bounce. The bounce of switch contact So it is possible when the program first detects a switch in the keypad is pressed but when interrogating which key is pressed, it would find no key pressed. Contact bounce also occurs when the switch is released. Because the switch contacts open and close several times before they settle, the program may detect a key press when the key is released. For many applications, it is important that each key press is only recognized as one action. A simple software solution is that when a transition of the contact state change is detected such as a key pressed or a key released, the software does a delay for about ms to wait out the contact bounce. After the delay, the contacts should be settled and stable. 11/12
12 Exercise 7.1 Add debounce functionality to the Toggling_LEDs application. 12/12
AGH University of Science and Technology Cracow Department of Electronics
AGH University of Science and Technology Cracow Department of Electronics Microcontroller Lab Tutorial 1 Microcontrollers programming in C Author: Paweł Russek http://www.fpga.agh.edu.pl/ml ver. 3.10.16
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK C8051F560 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationTools Basics. Getting Started with Renesas Development Tools R8C/3LX Family
Getting Started with Renesas Development Tools R8C/3LX Family Description: The purpose of this lab is to allow a user new to the Renesas development environment to quickly come up to speed on the basic
More informationQuick Start Guide for the Turbo upsd DK3300-ELCD Development Kit- RIDE
Contents: Circuit Board upsd DK3300-ELCD Development Board with a upsd3334d-40u6 MCU with Enhanced Graphic LCD RLINK-ST, a USB-based JTAG adapter from Raisonance for debugging with Raisonance Integrate
More informationSKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.
SKP16C26 Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance
More informationGetting Started with MCUXpresso SDK CMSIS Packs
NXP Semiconductors Document Number: MCUXSDKPACKSGSUG User's Guide Rev. 1, 11/2017 Getting Started with MCUXpresso SDK CMSIS Packs 1 Introduction The MCUXpresso Software Development Kit (SDK) is a comprehensive
More informationAGH University of Science and Technology Cracow Department of Electronics
AGH University of Science and Technology Cracow Department of Electronics Microprocessors laboratory Tutorial A Using Arduino UNO for laboratory tutorials Author: Paweł Russek http://www.fpga.agh.edu.pl/upt
More informationNEW CEIBO DEBUGGER. Menus and Commands
NEW CEIBO DEBUGGER Menus and Commands Ceibo Debugger Menus and Commands D.1. Introduction CEIBO DEBUGGER is the latest software available from Ceibo and can be used with most of Ceibo emulators. You will
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK UNIVERSITY DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationProject Debugging with MDK-ARM
Project Debugging with MDK-ARM Notes: This document assumes MDK-ARM Version 5.xx (µvision5 ) is installed with the required ST-Link USB driver, device family pack (STM32F4xx for STM32F4-Discovery board;
More informationMICROPROCESSORS TECHNOLOGY II
AGH University of Science and Technology IEiT Department of Electronics MICROPROCESSORS TECHNOLOGY II Exceptions and Interrupts Paweł Russek http://www.fpga.agh.edu.pl/upt2 15 Nov 2016 1 INTRODUCTION 1.1
More informationSTM32L100C-Discovery Board Projects
STM32L100C-Discovery Board Projects Keil Microcontroller Development Kit for ARM (MDK-ARM) Version 5.xx As illustrated in Figure 1, MDK-ARM Version 5.xx (µvision5) comprises a set of core functions: Integrated
More informationBinary Representations, and the Teensy 3.5
Binary Representations, and the Teensy 3.5 Data Types short, int, long: size depends on the particular microprocessor In order to be clear about sizes, gcc (our compiler) provides a set of types, including:
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK C8051F931 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationHandsOn Technology -- HT-MC-02 MODEL: HT-MC-02
HandsOn Technology 8051 μcontroller Starter Kits FLASH μcontroller PROGRAMMER/DEVELOPMENT SYSTEM MODEL: HT-MC-02 8051 is one of the most popular 8-bit µcontroller architectures in use today, learn it the
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK C8051F330 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationGetting Started in C Programming with Keil MDK-ARM Version 5
Getting Started in C Programming with Keil MDK-ARM Version 5 Reason for Revision This document was revised for Keil MDK-ARM v5.14 on February 18, 2015. This document was revised for MSP432 LaunchPad on
More informationGetting Started in C Programming with Keil MDK-ARM Version 5
Getting Started in C Programming with Keil MDK-ARM Version 5 Reason for Revision This document was revised for Keil MDK-ARM v5.14 on February 18, 2015. This document was revised for MSP432 LaunchPad on
More informationGetting Started in C Programming with Keil MDK-ARM Version 5
Getting Started in C Programming with Keil MDK-ARM Version 5 Reason for Revision This document was revised for Keil MDK-ARM v5.14 on February 18, 2015. This document was revised for MSP432 LaunchPad on
More informationECE 254/MTE241 Lab1 Tutorial Keil IDE and RL-RTX Last updated: 2012/09/25
Objective ECE 254/MTE241 Lab1 Tutorial Keil IDE and RL-RTX Last updated: 2012/09/25 This tutorial is to introduce the Keil µvision4 IDE and Keil RL-RTX. Students will experiment with inter-process communication
More informationUser Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM
FRDM-KL02Z User Manual Rev. 0 Freescale Semiconductor Inc. FRDMKL02ZUM 1. Overview The Freescale Freedom development platform is an evaluation and development tool ideal for rapid prototyping of microcontroller-based
More informationS32K144 EVB QUICK START GUIDE REV4.2 APPLIES FOR: S32K144 EVB (SCH REV B) EXTERNAL USE
S32K144 EVB QUICK START GUIDE REV4.2 APPLIES FOR: S32K144 EVB (SCH-29248 REV B) Contents: Get to Know S32K144 EVB Out of the Box Setup Out of the Box Experience (OOBE) based on the FreeMASTER tool Introduction
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK LIN DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent damage
More informationFRDM-KL03Z User s Guide
Freescale Semiconductor User s Guide Document Number: FRDMKL03ZUG Rev. 0, 7/2014 FRDM-KL03Z User s Guide 1 Overview The Freescale Freedom development platform is an evaluation and development tool ideal
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK UNIVERSITY DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationUniversity of Hawaii EE 361L MPLab Quick Tutorial and Project 2.1 Last updated September 1, 2011
University of Hawaii EE 361L MPLab Quick Tutorial and Project 2.1 Last updated September 1, 2011 This is a quick tutorial of programming the PIC 16F684A processor using the MPLab Integrated Development
More informationCPE 323: Laboratory Assignment #1 Getting Started with the MSP430 IAR Embedded Workbench
CPE 323: Laboratory Assignment #1 Getting Started with the MSP430 IAR Embedded Workbench by Alex Milenkovich, milenkovic@computer.org Objectives: This tutorial will help you get started with the MSP30
More informationTRACE32 Debugger Getting Started... ICD Tutorial About the Tutorial... 2
ICD Tutorial TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Debugger Getting Started... ICD Tutorial... 1 About the Tutorial... 2 Working with the Debugger... 3 Set up the Program Environment
More informationKeil uvision development story (Adapted from (Valvano, 2014a))
Introduction uvision has powerful tools for debugging and developing C and Assembly code. For debugging a code, one can either simulate it on the IDE s simulator or execute the code directly on ta Keil
More informationFinite State Machine Lab
Finite State Machine Module: Lab Procedures Goal: The goal of this experiment is to reinforce state machine concepts by having students design and implement a state machine using simple chips and a protoboard.
More informationMPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine
MPLAB SIM MPLAB IDE Software Simulation Engine 2004 Microchip Technology Incorporated MPLAB SIM Software Simulation Engine Slide 1 Welcome to this web seminar on MPLAB SIM, the software simulator that
More informationAGH University of Science and Technology Cracow Department of Electronics
AGH University of Science and Technology Cracow Department of Electronics Microprocessors laboratory Tutorial 7 Interrupts Author: Paweł Russek http://www.fpga.agh.edu.pl/upt ver. 01/07/14 1/12 1. Introduction
More informationA Quick Introduction to MPLAB SIM
A Quick Introduction to MPLAB SIM Welcome to this web seminar, A Quick Introduction to MPLAB SIM. My name is Darrel Johansen and I m a manager in the Development Tools group at Microchip. Page 1 What Is
More informationIntro to MS Visual C++ Debugging
Intro to MS Visual C++ Debugging 1 Debugger Definition A program used to control the execution of another program for diagnostic purposes. Debugger Features / Operations Single-Stepping 100011101010101010
More informationGetting Started with STK200 Dragon
Getting Started with STK200 Dragon Introduction This guide is designed to get you up and running with main software and hardware. As you work through it, there could be lots of details you do not understand,
More informationELEC 3040/3050 Lab Manual Lab 2 Revised 8/20/14. LAB 2: Developing and Debugging C Programs in MDK-ARM for the STM32L100RC Microcontroller
LAB 2: Developing and Debugging C Programs in MDK-ARM for the STM32L100RC Microcontroller The objective of this laboratory session is to become more familiar with the process for creating, executing and
More informationM16C/62P QSK QSK62P Plus Tutorial 1. Software Development Process using HEW4
M16C/62P QSK QSK62P Plus Tutorial 1 Software Development Process using HEW4 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW4 (Highperformance Embedded
More information_ V Intel 8085 Family In-Circuit Emulation. Contents. Technical Notes
_ V9.12. 225 Technical Notes Intel 8085 Family In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge
More informationStart a New Project with Keil MDK-ARM Version 5 and ST Micro Nucleo-F446RE
Start a New Project with Keil MDK-ARM Version 5 and ST Micro Nucleo-F446RE This tutorial is intended for starting a new project to develop software with ST Micro Nucleo-F446RE board (with STM32F446RE MCU)
More informationResource 2 Embedded computer and development environment
Resource 2 Embedded computer and development environment subsystem The development system is a powerful and convenient tool for embedded computing applications. As shown below, the development system consists
More informationC8051F530A-DK C8051F530A DEVELOPMENT KIT USER S GUIDE. 1. Relevant Devices. 2. Kit Contents
C8051F530A DEVELOPMENT KIT USER S GUIDE 1. Relevant Devices The C8051F530A Development Kit is intended as a development platform for the microcontrollers in the C8051F52xA-53xA MCU family. The members
More informationApplication Note: 200
Application Note: 200 Setting Up ULINK2 for the LogicPD imx LITEKIT Abstract This application note provides instructions for connecting and setting up the imx LITEKIT evaluation board for use with the
More informationNuvoton 4T 8051-based Microcontroller NuTiny-SDK-N78E715 User Manual
4T 8051 8-bit Microcontroller Nuvoton 4T 8051-based Microcontroller NuTiny-SDK-N78E715 User Manual The information described in this document is the exclusive intellectual property of Nuvoton Technology
More informationStarting Embedded C Programming CM0506 Small Embedded Systems
Starting Embedded C Programming CM0506 Small Embedded Systems Dr Alun Moon 19th September 2016 This exercise will introduce you to using the development environment to compile, build, downnload, and debug
More informationAGH University of Science and Technology Cracow Department of Electronics
AGH University of Science and Technology Cracow Department of Electronics Microprocessors laboratory Tutorial 7 Interrupts Author: Paweł Russek http://www.fpga.agh.edu.pl/upt ver. 25/05/16 1/11 1. Introduction
More informationECGR 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 informationEECS 388 Laboratory Exercise #03 Button Input and Serial Communication September 16, 2018 Gary J. Minden
1 Introduction EECS 388 Laboratory Exercise #03 Button Input and Serial Communication September 16, 2018 Gary J. Minden In this laboratory exercise you will write, compile, execute, and demonstrate a task
More informationEPM900 - Overview. Features. Technical Data
Page 1 of 25 EPM900 - Overview The Keil EPM900 supports in-circuit debugging and parallel Flash ROM programming for the Philips P89LPC9xx device family. EPM900 connects directly to the µvision2 Debugger
More informationDEV-1 HamStack Development Board
Sierra Radio Systems DEV-1 HamStack Development Board Reference Manual Version 1.0 Contents Introduction Hardware Compiler overview Program structure Code examples Sample projects For more information,
More information3 TUTORIAL. In This Chapter. Figure 1-0. Table 1-0. Listing 1-0.
3 TUTORIAL Figure 1-0. Table 1-0. Listing 1-0. In This Chapter This chapter contains the following topics: Overview on page 3-2 Exercise One: Building and Running a C Program on page 3-4 Exercise Two:
More informationFigure 1. Simplicity Studio
SIMPLICITY STUDIO USER S GUIDE 1. Introduction Simplicity Studio greatly reduces development time and complexity with Silicon Labs EFM32 and 8051 MCU products by providing a high-powered IDE, tools for
More informationLab 3a: Scheduling Tasks with uvision and RTX
COE718: Embedded Systems Design Lab 3a: Scheduling Tasks with uvision and RTX 1. Objectives The purpose of this lab is to lab is to introduce students to uvision and ARM Cortex-M3's various RTX based Real-Time
More informationSTM32F100RB processor GPIO notes rev 2
STM32F100RB processor GPIO notes rev 2 ST Microelectronics company ARM based processors are considered microcontrollers because in addition to the CPU and memory they include timer functions and extensive
More informationHOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS
HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS INTRODUCTION A program written in a computer language, such as C/C++, is turned into executable using special translator software.
More informationS32K118 EVB QUICK START GUIDE APPLIES FOR: S32K118 EVB (SCH_29945 REV B) EXTERNAL USE
S32K118 EVB QUICK START GUIDE APPLIES FOR: S32K118 EVB (SCH_29945 REV B) Contents: Get to Know S32K118 EVB Out of the Box Setup Introduction to OpenSDA Creating a new S32DS project for S32K118: Download
More informationPUSH BUTTON. Revision Class. Instructor / Professor LICENSE
CME-11E9 EVBU LAB EXPERIMENT PUSH BUTTON Revision 04.02.11 Class Instructor / Professor LICENSE You may use, copy, modify and distribute this document freely as long as you include this license and the
More informationLABORATORY MANUAL Interfacing LCD 16x2, Keypad 4x4 and 7Segment Display to PIC18F4580
LABORATORY MANUAL Interfacing LCD 16x2, Keypad 4x4 and 7Segment Display to PIC18F458 1. OBJECTIVES: 1.1 To learn how to interface LCD 16x2, Keypad 4x4 and 7Segment Display to the microcontroller. 1.2 To
More informationC Programming in Atmel Studio 7 Step by Step Tutorial
C Programming in Atmel Studio 7 Step by Step Tutorial Sepehr Naimi NicerLand.com 1/1/017 Contents Introduction... Downloading and Installing Atmel Studio... 3 Opening Atmel Studio... 3 Creating the first
More informationS32K118 EVB QUICK START GUIDE APPLIES FOR: S32K118 EVB (SCH_29945 REV B) EXTERNAL USE
S32K118 EVB QUICK START GUIDE APPLIES FOR: S32K118 EVB (SCH_29945 REV B) Contents: Get to Know S32K118 EVB Out of the Box Setup Introduction to OpenSDA Creating a new S32DS project for S32K118: Download
More informationChanging the Embedded World TM. Module 3: Getting Started Debugging
Changing the Embedded World TM Module 3: Getting Started Debugging Module Objectives: Section 1: Introduce Debugging Techniques Section 2: PSoC In-Circuit Emulator (ICE) Section 3: Hands on Debugging a
More informationCMS-8GP32. A Motorola MC68HC908GP32 Microcontroller Board. xiom anufacturing
CMS-8GP32 A Motorola MC68HC908GP32 Microcontroller Board xiom anufacturing 2000 717 Lingco Dr., Suite 209 Richardson, TX 75081 (972) 994-9676 FAX (972) 994-9170 email: Gary@axman.com web: http://www.axman.com
More informationELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O
ELEC 3040/3050 Lab 5 Matrix Keypad Interface Using Parallel I/O Goals of this lab exercise Control a real device with the microcontroller Coordinate parallel I/O ports to control and access a device Implement
More informationCEIBO FE-5111 Development System
CEIBO FE-5111 Development System Development System for Atmel W&M T89C5111 Microcontrollers FEATURES Emulates Atmel W&M T89C5111 4K Code Memory Real-Time Emulation and Trace Frequency up to 33MHz/5V ISP
More informationIntroduction. Key features and lab exercises to familiarize new users to the Visual environment
Introduction Key features and lab exercises to familiarize new users to the Visual environment January 1999 CONTENTS KEY FEATURES... 3 Statement Completion Options 3 Auto List Members 3 Auto Type Info
More informationSoftware Setup and Introductory Assembly programs for the MSP430 *
OpenStax-CNX module: m15976 1 Software Setup and Introductory Assembly programs for the MSP430 * Texas Instruments This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution
More informationThe NetBeans Debugger: A Brief Tutorial
The NetBeans Debugger: A Brief Tutorial Based on a tutorial by Anousha Mesbah from the University of Georgia NetBeans provides a debugging tool that lets you trace the execution of a program step by step.
More informationREQUIRED MATERIALS Epiphany-DAQ board Wire Jumpers Switch LED Resistors Breadboard Multimeter (if needed)
Page 1/6 Lab 1: Intro to Microcontroller Development, 06-Jan-16 OBJECTIVES This lab will introduce you to the concept of developing with a microcontroller while focusing on the use of General Purpose Input/Output
More informationUser Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM
FRDM-KL02Z User Manual Rev. 0 Freescale Semiconductor Inc. FRDMKL02ZUM 1. Overview The Freescale Freedom development platform is an evaluation and development tool ideal for rapid prototyping of microcontroller-based
More informationCONTENTS BIGAVR2 KEY FEATURES 4 CONNECTING THE SYSTEM 5 INTRODUCTION 6
CONTENTS BIGAVR2 KEY FEATURES 4 CONNECTING THE SYSTEM 5 INTRODUCTION 6 Switches 7 Jumpers 8 MCU Sockets 9 Power Supply 11 On-board USB 2.0 Programmer 12 Oscillator 14 LEDs 15 Reset Circuit 17 Push-buttons
More informationS32K142 EVB QUICK START GUDE REV3.1 APPLIES FOR: S32K142 EVB (SCH_29701 REV D/C) EXTERNAL USE
S32K142 EVB QUICK START GUDE REV3.1 APPLIES FOR: S32K142 EVB (SCH_29701 REV D/C) Contents: Get to Know S32K142 EVB JumpStart Setup JumpStart based on the FreeMASTER tool Introduction to OpenSDA Creating
More informationAN1369 APPLICATION NOTE
AN1369 APPLICATION NOTE GETTING STARTED WITH RAISONANCE IDE FOR THE ST6 MICROCONTROLLER by Microcontroller Division Applications INTRODUCTION Ride is the development toolchain for ST62 developed by Raisonance.
More informationAssembly Programming in Atmel Studio 7 Step by Step Tutorial
Assembly Programming in Atmel Studio 7 Step by Step Tutorial Sepehr Naimi BIHE University 12/1/2017 Contents Introduction... 2 Downloading and Installing Atmel Studio... 3 Opening Atmel Studio... 3 Creating
More informationEasyPIC5 Development System
EasyPIC5 Development System Part No.: MPMICRO-PIC-Devel- EasyPIC5 Overview EasyPIC5 is a development system that supports over 120 8-, 14-, 18-, 20-, 28- and 40-pin PIC MCUs. EasyPIC5 allows PIC microcontrollers
More informationFigure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick
TOOLSTICK C8051F800 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent
More informationSH69P48A EVB. Application Notes for SH69P48A EVB SH69V48A JP2 J4(ICE_J4) S1 IDD TEST JP1 74HC273 JP4 JP3 74HC273 JP6 STKOVE JP7 SW1 J5(ICE_J5)
SH69P48A EVB Application Notes for SH69P48A EVB The SH69P48A EVB is used to evaluate the SH69P48A chip's function for the development of application program. It contains of a SH69V48A chip to evaluate
More informationKeil TM MDK-ARM Quick Start for. Holtek s HT32 Series Microcontrollers
Keil TM MDK-ARM Quick Start for Holtek s Microcontrollers Revision: V1.10 Date: August 25, 2011 Table of Contents 1 Introduction... 5 About the Quick Start Guide... 5 About the Keil MDK-ARM... 6 2 System
More informationFreescale Semiconductor Inc. Microcontroller Solutions Group. FRDM-KL46Z User s Manual FRDM-KL46Z-UM Rev. 1.0
Freescale Semiconductor Inc. Microcontroller Solutions Group FRDM-KL46Z User s Manual FRDM-KL46Z-UM Rev. 1.0 Table of Contents 1 FRDM-KL46Z Overview... 3 2 References documents... 3 3 Getting started...
More informationH8 C-SPY. User Guide WINDOWS WORKBENCH VERSION
H8 C-SPY User Guide WINDOWS WORKBENCH VERSION COPYRIGHT NOTICE Copyright 1998 IAR Systems. All rights reserved. No part of this document may be reproduced without the prior written consent of IAR Systems.
More information3 Getting Started with Objects
3 Getting Started with Objects If you are an experienced IDE user, you may be able to do this tutorial without having done the previous tutorial, Getting Started. However, at some point you should read
More informationGetting Started with Kinetis SDK (KSDK) v.1.2
Freescale Semiconductor Document Number: KSDK12GSUG User's Guide Rev. 0, 4/2015 Getting Started with Kinetis SDK (KSDK) v.1.2 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides comprehensive
More informationGetting Started with Kinetis SDK (KSDK) v.1.3
Freescale Semiconductor Document Number: KSDK13GSUG User's Guide Rev. 1, 11/2015 Getting Started with Kinetis SDK (KSDK) v.1.3 1 Overview Kinetis SDK (KSDK) is a Software Development Kit that provides
More informationUSB Debug Adapter. Power USB DEBUG ADAPTER. Silicon Laboratories. Stop. Run. Figure 1. Hardware Setup using a USB Debug Adapter
C8051F38X DEVELOPMENT KIT USER S GUIDE 1. Kit Contents The C8051F38x Development Kit contains the following items: C8051F380 Target Board C8051Fxxx Development Kit Quick-start Guide Silicon Laboratories
More informationGetting Started with Keil µvision 3 and C51
Getting Started with Keil µvision 3 and C51 1. Create a Project: Start uvision3. Go to Project->New µvision Project on the µvision3 window. Then enter the name of your project and select a location. Click
More informationARM HOW-TO GUIDE Interfacing Switch with LPC2148 ARM
ARM HOW-TO GUIDE Interfacing Switch with LPC48 ARM Contents at a Glance ARM7 LPC48 Primer Board... 3 Switch... 3 Interfacing Switch... 4 Interfacing Switch with LPC48... 5 Pin Assignment with LPC48...
More informationEKK-LM3S811 QUICKSTART
Stellaris LM3S811 Evaluation Kit The Stellaris LM3S811 Evaluation Kit provides a low-cost way to start designing with Stellaris microcontrollers. The LM3S811 Evaluation Board (EVB) can function as either
More informationJCreator. Starting JCreator
1 of 12 9/29/2005 2:31 PM JCreator JCreator is a commercial Java environment available from http://www.jcreator.com. Inexpensive academic licenses and a free "limited edition" are available. JCreator runs
More informationPICMICRO C-SPY. User Guide
PICMICRO C-SPY User Guide COPYRIGHT NOTICE Copyright 1998 IAR Systems. All rights reserved. No part of this document may be reproduced without the prior written consent of IAR Systems. The software described
More informationCONTENTS. dspicpro4 KEY FEATURES 4 CONNECTING THE SYSTEM 5 INTRODUCTION 6
CONTENTS dspicpro4 KEY FEATURES 4 CONNECTING THE SYSTEM 5 INTRODUCTION 6 Switches and Jumpers 7 MCU Sockets 8 Power Supply 10 On-Board USB 2.0 Programmer 11 MikroICD 12 RS-232 Communication Circuit 13
More informationGetting Started in Assembly Programming with Keil uvision and MSP432
Getting Started in Assembly Programming with Keil uvision and MSP432 This tutorial is written on uvision v5.15 and Texas Instruments MSP432 LaunchPad. Assembly Programming with MSP432 MSP432 has an ARM
More informationGetting Started Guide RS-EDP & XC167 CPU Module. Version 2 10th June 2010
Getting Started Guide RS-EDP & XC167 CPU Module Version 2 10th June 2010 Electrocomponents plc Page 1 Contents 1. Introduction 3 2. Development Tool Support 4 2.1 FTDI Based USB to JTAG Converter... 4
More informationNIOS CPU Based Embedded Computer System on Programmable Chip
1 Objectives NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems This lab has been constructed to introduce the development of dedicated embedded system based
More informationLaboratory Exercise 7 - Extended I/O & Parallel Processing
Laboratory Exercise 7 - Extended I/O & Parallel Processing The purpose of this lab is to make an LED blink first by using the extended I/O function of the Microcontroller, and then by parallel processing
More information2 TUTORIAL. Overview. VisualDSP Getting Started Guide 2-1 for SHARC DSPs
2 TUTORIAL This chapter contains the following topics. Overview on page 2-1 Exercise One: Building and Running a C Program on page 2-3 Exercise Two: Calling an Assembly Routine and Creating an LDF on page
More informationSection 1 AVR Studio User Guide
Section 1 AVR Studio User Guide 1.1 Introduction Welcome to AVR Studio from Atmel Corporation. AVR Studio is a Development Tool for the AVR family of microcontrollers. This manual describes the how to
More informationS32K148 EVB QUICK START GUIDE REV1 APPLIES FOR: S32K148 EVB (SCH REV A/B) EXTERNAL USE
S32K148 EVB QUICK START GUIDE REV1 APPLIES FOR: S32K148 EVB (SCH-29644 REV A/B) Contents: Get to Know S32K148 EVB Out of the Box Setup Introduction to OpenSDA S32DS IDE basics: Download Create a project
More informationMCUXpresso SDK USB Stack User s Guide
NXP Semiconductors Document Number: USBSUG User s Guide Rev. 5, 03/2017 MCUXpresso SDK USB Stack User s Guide 1 Overview This document provides the following: Detailed steps to compile the USB examples,
More informationELEC 3040/3050 Lab 5. Matrix Keypad Interface Using Parallel I/O
ELEC 3040/3050 Lab 5 Matrix Keypad Interface Using Parallel I/O Goals of this lab exercise Control a real device with the microcontroller Coordinate parallel I/O ports to control and access a device Implement
More informationChapter 9. Input/Output (I/O) Ports and Interfacing. Updated: 3/13/12
Chapter 9 Input/Output (I/O) Ports and Interfacing Updated: 3/13/12 Basic Concepts in I/O Interfacing and PIC18 I/O Ports (1 of 2) I/O devices (or peripherals) such as LEDs and keyboards are essential
More informationAn FTDI connection: The ATtiny microcontrollers don t have a hardware UART External Crystal header pins for an optional crystal
Getting Started with the T-Board The T-Board modules were designed to speed up your AVR prototyping. This guide will show you just how quickly you can get up and running with the Hello World for microcontrollers
More informationIntroduction to Embedded Systems
Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems
More information