C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia



Similar documents
Lab Experiment 1: The LPC 2148 Education Board

How To Develop A Toolstick

PC Base Adapter Daughter Card UART GPIO. Figure 1. ToolStick Development Platform Block Diagram

Chapter 13. PIC Family Microcontroller

2.0 Command and Data Handling Subsystem

M68EVB908QL4 Development Board for Motorola MC68HC908QL4

Glitch Free Frequency Shifting Simplifies Timing Design in Consumer Applications

Am186ER/Am188ER AMD Continues 16-bit Innovation

Figure 1. 8-Bit USB Debug Adapter

Serial port interface for microcontroller embedded into integrated power meter

The Programming Interface

8051 MICROCONTROLLER COURSE

DKWF121 WF121-A B/G/N MODULE EVALUATION BOARD

Microtronics technologies Mobile:

Tutorial for MPLAB Starter Kit for PIC18F

SKP16C62P Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

Lecture N -1- PHYS Microcontrollers

Implementing a Digital Answering Machine with a High-Speed 8-Bit Microcontroller

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

Pre-tested System-on-Chip Design. Accelerates PLD Development

CB-OLP425 DEVELOPMENT KIT GETTING STARTED

Ingar Fredriksen AVR Applications Manager. Tromsø August 12, 2005

Fondamenti su strumenti di sviluppo per microcontrollori PIC

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Designing VM2 Application Boards

Low-Voltage/Low-Power MCU Solutions from Silicon Labs

TURBO PROGRAMMER USB, MMC, SIM DEVELOPMENT KIT

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester

Sample Project List. Software Reverse Engineering

Palaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P.

Quick Start Guide. TWR-MECH Mechatronics Board TOWER SYSTEM

Introducing AVR Dragon

USBSPYDER08 Discovery Kit for Freescale MC9RS08KA, MC9S08QD and MC9S08QG Microcontrollers User s Manual

STK User Guide

Atmel s Self-Programming Flash Microcontrollers

8-Bit Flash Microcontroller for Smart Cards. AT89SCXXXXA Summary. Features. Description. Complete datasheet available under NDA

ECIO40P ECIO28P ECRM40. Page 1. USB programmable microcontrollers. 0.6 DIP footprint. Supplied with a free version of Flowcode. E-blocks compatible

Arduino Due Back. Warning: Unlike other Arduino boards, the Arduino Due board runs at 3.3V. The maximum. Overview

Chapter 2 Features of Embedded System

Chapter 12. Development Tools for Microcontroller Applications

Programming Flash Microcontrollers through the Controller Area Network (CAN) Interface

The Heartbeat behind Portable Medical Devices: Ultra-Low-Power Mixed-Signal Microcontrollers

Microcontrollers and Sensors. Scott Gilliland - zeroping@gmail

Quick Start Guide. MRB-KW01 Development Platform Radio Utility Application Demo MODULAR REFERENCE BOARD

USB OTG and Embedded Host Microchip Technology Incorporated. All Rights Reserved. Slide 1

Embedded Software Development: Spottbillige Hardware + OSS = Zum Spielen zu Schade!

ET-BASE AVR ATmega64/128

PICNet 1. PICNet 1 PIC18 Network & SD/MMC Development Board. Features. Applications. Description

USB - FPGA MODULE (PRELIMINARY)

In-System Programmer USER MANUAL RN-ISP-UM RN-WIFLYCR-UM

Conversion Between Analog and Digital Signals

RC2200DK Demonstration Kit User Manual

Welcome to the tutorial for the MPLAB Starter Kit for dspic DSCs

Microcomputer Based Electronics: Using the C Stamp in Pre- Engineering, Technology, and Engineering Programs

Production Flash Programming Best Practices for Kinetis K- and L-series MCUs

ENGI E1112 Departmental Project Report: Computer Science/Computer Engineering

EVAL-UFDC-1/UFDC-1M-16

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ

Embedded Systems on ARM Cortex-M3 (4weeks/45hrs)

USER GUIDE EDBG. Description

GAS LEAKAGE DETECTION & AUTO ON-OFF GAS SYSTEM

Access Control Using Smartcard And Passcode

Analog Devices Welcomes Hittite Microwave Corporation NO CONTENT ON THE ATTACHED DOCUMENT HAS CHANGED

AC : PRACTICAL DESIGN PROJECTS UTILIZING COMPLEX PROGRAMMABLE LOGIC DEVICES (CPLD)

Measuring Resistance Using Digital I/O

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

The following is a summary of the key features of the ARM Injector:

AN-812 APPLICATION NOTE

Computer Automation Techniques. Arthur Carroll

VOICE RECOGNITION KIT USING HM2007. Speech Recognition System. Features. Specification. Applications

EEM870 Embedded System and Experiment Lecture 1: SoC Design Overview

Microcontrollers in Practice

APPLICATION NOTE. AT07175: SAM-BA Bootloader for SAM D21. Atmel SAM D21. Introduction. Features

Introduction. Getting familiar with chipkit Pi

Controlling a Dot Matrix LED Display with a Microcontroller

Virtual KNX/EIB devices in IP networks

ZigBee-2.4-DK 2.4 GHZ ZIGBEE DEVELOPMENT KIT USER S GUIDE. 1. Kit Contents. Figure GHz ZigBee Development Kit

EEL 4924 Electrical Engineering Design (Senior Design) Final Report. 19 April Name: Brandon Kalarovich

STEPPER MOTOR SPEED AND POSITION CONTROL

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor.

Lab 1: Introduction to Xilinx ISE Tutorial

INTRODUCTION: ABSTRACT:

MICROPROCESSOR AND MICROCOMPUTER BASICS

Network connectivity controllers

PROJECT PRESENTATION ON CELLPHONE OPERATED ROBOTIC ASSISTANT

FLYPORT Wi-Fi G

ontroller LSI with Built-in High- Performance Graphic Functions for Automotive Applications

DS1104 R&D Controller Board

7a. System-on-chip design and prototyping platforms

Design Considerations in Adding USB Communications to Embedded Applications

Capacitive Touch Lab. Renesas Capacitive Touch Lab R8C/36T-A Family

Web Site: Forums: forums.parallax.com Sales: Technical:

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

Serial Communications

DsPIC HOW-TO GUIDE Creating & Debugging a Project in MPLAB

Lab 1 Course Guideline and Review

AN588 ENERGY HARVESTING REFERENCE DESIGN USER S GUIDE. 1. Kit Contents. 2. Introduction. Figure 1. Energy Harvesting Sensor Node

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Transcription:

C8051F020 Utilization in an Embedded Digital Design Project Course Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia Abstract In this paper, the utilization of the C8051F020 in an embedded digital design project course is presented. In the discussion that follows the digital design course sequence at our university is described. The key components of the project are then presented as they relate to the C8051F020. Next, an overview of the C8051F020 implementation in the Silicon Laboratories USB ToolStick concept is discussed. Finally, the results of an academic year s implementation are presented. Introduction The digital design sequence in the electrical and computer engineering technology program at our institution consists of three courses aptly named Digital I, Digital II, and Digital III. The corresponding course numbers are ECET 1200, ECET 2210, and ECET 3220. In each course, an element of design is required of the student. In the freshman course, the students are required to complete a two week lab project towards the end of the semester. The project usually involves small scale discrete logic ICs and possibly programmable logic devices programmed using VHDL. In the second course of the digital design sequence, students are required to complete a minimum of two digital design projects. The first project is usually an elaborate state machine implemented in VHDL on a complex programmable logic device (CPLD). The second project is a small embedded design centered on a Silicon Laboratory C8051F330 microcontroller. The duration of each project is approximately four weeks. The third course in the digital sequence is the subject of this paper. Digital III is an embedded design course centered about the Intel 8051 series of microcontrollers. Student groups are required to design, construct, test, and document an embedded system over the course of a semester. To most students in our program, the course project appears to be a daunting task. It is not uncommon for a student to postpone the required course until the semester of expected graduation. As a result, student project groups consist of credit hour laden juniors and seniors. As such, the course is very close to that which is considered a capstone course at many universities. Course Description ECET 3220 Digital III is a project based course scheduled for the last semester of the student s junior year. The core device about which the system is designed is the 8051 microcontroller. The data entry to the microcontroller is through a standard 4x4 keypad. The system display is a

common parallel LCD. External memory should also be included. The student groups are required to research problems that might be solved by using embedded systems based on microcontrollers then present a proposal to the course instructor for approval. Once approved the students go about designing, procuring, testing, documenting, etc. while the instructor lectures on the following course topics: address decoding memory mapping interfacing interrupts serial communication analog to digital conversion digital to analog conversion advanced coding The real learning experience comes from the lessons learned in the laboratory. Project management is the most important aspect of the course. Fortunately, the experience in the prerequisite digital course has prepared the students to somewhat methodically plan out and anticipate the time required to implement each subsystem of the design. Interfacing the subsystems and components is also a key lesson learned in the laboratory. Prior to the course, students have a vague idea of how to spot voltage and current issues in the design stage. The laboratory experience quickly reinforces this key concept. Prototyping, noise reduction, mechanical construction, budgeting, documentation, etc. all come into play during the project. Until recently, an inhibiting factor to project success was how rapidly and how well the students could test 8051 source code as it relates to subsystem function and to the complete system design. In the recent past, 8051 variants from Intel, Atmel, Philips, and others, required brute force external programming, chip insertion testing, and reprogramming in order to flesh out source code problems. Many chip vendors have developed in-circuit emulators to expedite the process. The in-circuit emulator communicates with a personal computer to allow code debugging. However, many of the emulators use a microcontroller of the same product line but slightly different in specification from the intended microcontroller. The substitution in emulating microcontroller presents another set of possible problems such as variations in memory area, timing, port operation, etc. Recently, Silicon Laboratories has launched a development tool concept based on their 8051 variants which they market as the USB ToolStick. C8051F020 Development Platform Overview Of the 8051 family of microcontrollers used in this course to date, the Silicon Laboratories C8051F020 has been the most student friendly and economical. The USB ToolStick development system is marketed in the configuration shown in Figure 1. The ToolStick has a main module, the base adapter, which handles communication to the host computer through the USB port. It is also powered by the USB port. Inserted into the base adapter is a daughter card that contains the desired 8051 variant 2. The default configuration is a daughter card based on the C8051F330. The C8051F330 is a 20 pin, small, entry level microcontroller insufficient for

complex embedded designs required for this course. The base adapter and daughter can be purchased for approximately $25 USD. Figure 1: Silicon Laboratories USB ToolStick 2 The C8051F020 microcontroller is a 100 pin enhanced version of the 8051 microcontroller. The students can purchase the C8051F020 daughter card for around $25 and is marketed under the TOOLSTICKUNIDC which refers to university daughter card (Figure 2). The port pins of the microcontroller are brought out to the eight pin jumpers shown on the right side of the board. Pushbutton, dip switches, LEDs, and a potentiometer are available on the board for student use. The prototyping area shown at the top of the board in not connected to the microcontroller. Figure 2: Silicon Laboratories C8051F020 Daughter Card 3 Another implementation that is more suited to this course is the university prototype board shown in Figure 3 which cost around $15. All of the microcontroller pins are brought out to the soldering pads located around the edges of the board. The kit includes linear pins to solder around the board. Students can then easily insert the board into their embedded design.

Figure 3: Silicon Laboratories C8051F020 University Prototype Board 4 In order to use the University Prototype Board shown in Figure 3, an adapter is needed to connect the USB ToolStick base to the JTAG connecter of the prototype board. The ToolStick Debug Adapter shown in Figure 4 is necessary to connect the base unit to the microcontroller prototype board. The flat ribbon cable brings out the JTAG and C2 debug interfaces to the target device s in-system debug/programming circuitry. The debug adapter can also provide USB power to the target system up to 75 ma at 5 V. 3 Figure 4: Silicon Laboratories Debug Adapter Daughter Card 5 The software for compiling the assembly or C code and subsequent emulation is available for free download on the Silicon Labs website, www.silabs.com/toolstick. The software is termed the Integrated Development Environment (IDE). As a package, the USB ToolStick replaces development systems that have cost several hundred dollars.

C8051F020 Specifications The C8051F020 is a 100 pin, TQFP surface mount, enhanced version of the 8051 microcontroller. The block diagram is shown in Figure 5. The key specifications for the embedded design course are the operating voltage of 2.7 to 3.6 V, the size of the ROM and RAM, how many port pins are available and if they are bit or byte addressable, and what additional enhancements are present on the chip. The ROM is the full 64 kb of flash, in-system programmable memory of the standard 8051. In addition to the 256 bytes of internal RAM, another 4 kb is available on-chip. All standard 8051 ports are available and are 5 V tolerant. The ports can be configured as open-drain, weak pull-up, or as push-pull. An additional four ports are available beyond that of the standard 8051. Ports 0, 1, 2 7 yield 64 port input/output pins. The maximum system clock is 25 MHz with up to 25 MIPS throughput. Either an external oscillator or an internal programmable oscillator with a reduced range can be used for the system clock. The C8051F020 is a system-on-a-chip whereby two analog-to-digital converters (12-bit and 8- bit) are present along with two 12-bit digital-to-analog converters. It has two comparators and one built-in temperature sensor. Five internal general purpose counter/timers are present. Two UARTs for serial communication are present along with I2C and SPI. Virtually all key components of a feedback control system reside on the chip allowing for a very capable embedded system. Figure 5: C8051F020 Architecture Block Diagram 6

Results The C8051F020 has been utilized for two semesters, one academic year, in the digital design course. A total of 15 projects and approximately 45 students have employed the C8051F020. Every project has met the minimum requirements for completion of the course while most have exceeded the course expectations. The combination of the C8051F020 and the USB ToolStick platform has allowed the student groups to build each subsystem, test, and debug quickly throughout the semester. Problems were quickly identified allowing for solutions and work-arounds to be quickly implemented. The rapid development allowed each student group in both semesters to identify strengths and weaknesses in the project team by the end of the fifth week or the first third of the semester. The group members would then assign tasks to each member to be completed between meetings followed by verification of performance at the next group meeting. If the task was not completed, the other team members would step in to help trouble-shoot and brainstorm for a solution. By the tenth week, the team members were confident of each person s ability to complete the assigned task with minimal oversight. Most teams had the project essentially completed before the due date. Conclusion The utilization of the C8051F020 along with the USB ToolStick development platform has greatly enhanced the embedded design process for our project course. The microcontroller development system is relatively inexpensive and can be ordered by each student group. The easy availability and economy frees the students and the instructor from depending on school resources. The development system is comprehensive allowing student groups to work outside of posted laboratory hours. The integrated development software environment allows the students to rapidly test source code and debug errors quickly. Most importantly, the project success rate for the first academic year the C8051F020 has been in use in this course has been 100%. Acknowledgements The author would like to thank Silicon Laboratories for their generous support of laboratory equipment and software for Southern Polytechnic. Furthermore, the author would like to thank numerous students for their hard work and implicit contributions to this paper. Bibliography 1. Southern Polytechnic State University, http://www.spsu.edu/home/about/history.html, (17 Jan. 2008) 2. Silicon Laboratories, ToolStick C8051F330 Daughter Card User s Guide, Rev. 0.3 1/07 3. Silicon Laboratories, ToolStickUniDC User s Guide, Rev. 0.1 9/07 4. Silicon Laboratories, UNI-C805Ff020 User s Guide, Rev. 0.1 11/08 5. Silicon Laboratories, ToolStick Debug Adapter User s Guide, Rev. 0.1 9/06 6. Silicon Laboratories, C8051F020 Data Sheet Short Version, 11/02/2007