9 Pages

ece216_2009_proj 3

Course: ECE 216, Fall 2009
School: Rochester
Rating:
 
 
 
 
 

Word Count: 2510

Document Preview

Lab EE216 Project 3 11 February 2009 A D C AND D A C CONVERTER STUDY INTRODUCTION: In this project we will be investigating some of the static and dynamic characteristics of an analog-to-digital converter (ADC) and a digital-to-analog converter (DAC). The ADC functions to convert an analog signal (i.e. analog domain, continuous, time varying) into a digital signal (i.e. digital domain). The DAC functions to...

Register Now

Unformatted Document Excerpt

Coursehero >> New York >> Rochester >> ECE 216

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
Lab EE216 Project 3 11 February 2009 A D C AND D A C CONVERTER STUDY INTRODUCTION: In this project we will be investigating some of the static and dynamic characteristics of an analog-to-digital converter (ADC) and a digital-to-analog converter (DAC). The ADC functions to convert an analog signal (i.e. analog domain, continuous, time varying) into a digital signal (i.e. digital domain). The DAC functions to convert a digital signal into an analog signal. Specifically, we will be working with the analog-to-digital converter ADC0804 device. This device is an 8-bit Successive Approximation converter. The binary output is from a tri-state output latch to permit bussing on common data lines. The digital-to-analog converter we will be using is a DAC0800 which has a ladder structure as the converting circuit. Remember, the DAC does not need a clock. The output results directly from the application of an input digital word. No Sample/Hold Device will be used in measuring the static characteristics of the ADC. We will be using either a DC voltage input or a low frequency AC input, and as such, we will not have to concern ourselves with making provisions to insure the input is constant during the conversion period. In measuring the dynamic behavior, the input will be some type of periodic waveform. To keep the number of circuit components to a minimum, we will not use a S/H in this part either. As we proceed, we will keep in mind that the input is changing and we will discuss the impact on performance without a S/H circuit. This will be pointed out as you proceed through the project. The analog signal applied to the input of the device is converted to a straight binary number that appears as an 8-bit number on 8 parallel lines on the output. It does not appear instantaneously however. The conversion process, as we discussed in class, takes time and the converter must be commanded, in time, to start conversion. Upon the completion of a conversion, the converter generates an interrupt (INTR) signal indicating the "End of Conversion". When this interrupt occurs, we know that the digital signal on the output is the "digitized" representation of the analog signal. For the purpose of this experiment, we will let the ADC run continuously, and not concern ourselves with either commanding it to start or having to insure that the conversion is complete (looking at the INTR) before initiating another conversion. This is accomplished by connecting the INTR signal to the WR input line to indicate "Start Conversion". With this type of connection, as soon as the ADC completes a conversion, the INTR signal commands the ADC to start another conversion. As we discussed in the lectures, there is a wide variety of ADC's, each offering 1 something different in the way of performance and/or cost. CAUTION: The IC's we will be using have been fabricated using MOS technology. THEY MUST BE HANDLED CORRECTLY TO PREVENT DAMAGE THAT MAY RESULT FROM STATIC DISCHARGE. TRY TO MINIMIZE HANDLING AND AVOID TOUCHING THE PINS ON THE DEVICES. DO NOT CONNECT OR DISCONNECT ANY CIRCUIT COMPONENTS WITH POWER APPLIED. GENERAL INSTRUCTIONS: READ THE LAB OVER FIRST. Read the lab over to see if there may be some helpful hints further in the lab. Not all things are written down in the optimum order. As with the other labs, the write-up will consist of answering all the questions asked in this paper in addition to the abstract and discussions as indicated on the website. (Remember, each group of two is responsible for the lab write-up.) Before you proceed, I would again like to caution you to KEEP YOUR SETUP NEAT AND ORGANIZED. It will be easier to debug if you have problems. PROCEDURE: We will proceed by first connecting up the circuit as shown in the System Block Diagram [ Figure 1 ]. The detailed circuit connections for the ADC, DAC, buffers, reference supplies, etc., are shown in Figure 2. CONNECT UP LED's: As shown on the block diagram, connecting up the LED's is easily done using the switchboard used in ECE112. Since the LED's are buffered, you can use the LED's rather conveniently. This will make life a little easier, so you can see the outputs changing state, but does require a few more interconnections. NOTE: Use one of the prewired cables to connect the switchboard to your protoboard. It will make the wiring easier. 2 General Description of Circuit Operation: An analog input, from the signal generator, is applied to the input of the ADC. Since the converter is converting continuously, the digital output will be available continuously and will be impressed at the input to the DAC. The LED's will provide a visual representation of the digital signal. The output of the DAC will be an analog representation of the ADC output. *****Occasionally, the ADC will not start converting when power is applied. You may have to momentarily touch the "INTR" pin to ground to start the ADC converting. ***** A Word About Component Values: I can appreciate the frustration and time spent in trying to find component values consistent with the values indicated on the schematics in the various lab projects. To try to make life a little easier, I would like to establish the following ground rules and guidelines: Capacitors: Capacitor values given in the schematics are approximate values. You do not have to parallel or series connect capacitors to get exact values. The important thing is that you measure and record on the schematic the value of the capacitor you are using. The experiments are designed to accommodate a large variation in component values. For example, if a .1 fd. cap. is specified, you usually can use anything from a .05 to about a .5 fd. capacitor. In those cases where an EXACT value is required, I will indicate this in the write-up. The important thing is that you know what the component is being used for. Resistors: Basically the same rules apply to resistors as for capacitors. Consider the application and make some judgment about its value. In many cases, the exact value is not necessary, rather, only knowledge of the value is important. If you are in doubt, ask the instructor. If an R ohm resistor is specified, consider "what it is used for" or "how it is being used" and make some judgment as to what value or tolerance is really necessary. Part A: Resolution Measurements: Note: Read Part B before doing Part A to minimize data measurement. In this part of the project, the resolution of the ADC will be investigated. This is not an easy or accurate measurement because the exact point at which the transition occurs is a function of how precisely you adjust the input voltage. [Check the clock frequency and make sure that the clock is adjusted to about 500 KHz. As indicated on the data sheet, this converter can operate with a clock frequency in the range of 100 KHz. Fo 1MHz. ] (Again - let me stress making some of these measurements is not not easy because of the limited equipment available to make the measurements and your results will be an approximation). 3 We will attempt to measure the resolution using the DMM to monitor the input voltage and using the Scope and LED's as the output-monitoring device. Make sure you identify the bit pattern correctly [i.e. MSB LSB]. With the circuitry connected up as shown in the figures, set the switch SW1 to Position A. For this part of the experiment, the DC feature on the signal generator to apply the input voltage to the ADC. The level of accuracy from the signal generator should be adequate, but if you feel like it, you can connect a precision pot to the of output the signal generator to allow you to get microvolt resolution (ask the TA or instructor how to do this if you are not sure.) While carefully adjusting the voltage on the signal generator, note the input voltage where a transition of the LSB occurs. Now continue to adjust the input voltage and note where the next transition of the LSB occurs. The difference between the two input voltages is the smallest voltage change that can be detected on the output; hence this is the resolution. (NOTE: When making this measurement at both extremes, (i.e. zero input and full scale input), you will see the effects of the offset voltage. These are referred to as the zero error and the full-scale error voltages.) At zero, this is the voltage required to make the 0000 0000 to 0000 0001 transition when the input voltage is 1/2 LSB. (approximately 20 mv for a 5 volt ref.) At full scale, this is the voltage required to make the 1111 1110 to 1111 1111 transition when the input voltage is 1/2 LSB from the maximum value (approximately 20 mv from 5 volt reference). LET ME CAUTION YOU AGAIN: WHEN OPERATING THE ADC IN THE FREE RUNNING MODE, IT OCCASIONALLY WILL NOT START CONVERTING BECAUSE IT DOESN'T RECEIVE A WR "START CONVERSION" COMMAND. THE MANUFACTURER RECOMMENDS PUTTING THE "INTR" TO GROUND MOMENTARILY TO START THE CONVERSION PROCESS. Measure and record the error voltage at zero, and the resolution of the ADC at four or five points (i.e. near zero, mid-range, and near full scale). Remember, resolution in the case of the ADC, is the finest increment in input voltage that can be detected at the output. The change in the LSB of the ADC provides this data. In theory, the resolution should not be influenced by the magnitude of the input voltage. Remember, the resolution is measured by SLOWLY increasing (or decreasing) the input voltage and attempting to detect the voltage where the transition occurs. Keep in mind that you are really interested in the change in input voltage that causes the LSB to change on the output. Q1} Based on your measurements, what is the zero error of the ADC? Is the value you measured consistent with the manufacturer data? Comment on your observations. Q2} Based on your measurements, what is the resolution of the ADC? Is the number you measured consistent with the manufacturers data? Comment on your 4 observations. Q3} Is the resolution that you measured influenced by the magnitude of the input voltage at the input to the ADC? Would you expect it to be? Why? Q4} What factors influence the resolution of the 8-bit ADC you are using? Part B: Offset Voltage of the DAC: While making the above measurements, note the output of the DAC when all the digital input lines to the DAC are zero. Ideally the output of the DAC is zero since there is no digital input. In reality, there may be a small offset voltage. Q5) Using the DMM, measure and record the offset voltage. Part C: LSB Voltage Change of the DAC: Now, measure the output of the DAC as the digital input LSB changes. That is, when the digital input word is 0000 0000, then 0000 0001, and 0000 0010. Note: the DAC output is complementary and goes from 0 volts out when all inputs are 0's, to a negative voltage when all inputs are 1's. Q6) Does the output voltage of the DAC agree with the theoretical values that should occur on the output? Within what % ? Part D: Transfer Function of the ADC: Now, as long as you are in the position of taking data statically, why not measure the transfer function of the device. You can do this by taking a few more data points. Using the DMM to monitor the input voltage and the LED's to monitor the bit pattern on the output, measure and record the input voltage and output bit pattern for a series of arbitrary points (about 10 points), as you increase the input from zero to full scale. DO THIS SLOWLY. Remember, you must give the ADC time to make the necessary conversions as the input voltage is changed. Q7} Plot the data, plotting the input voltage on the Abscissa (i.e. the independent variable), and the bit pattern on the Ordinate (dependent variable). Comment on the reasonableness of the data and resulting curve. Q8} Does the ADC exhibit any offset, non-linearity, differential non-linearity, or nonmonotonic characteristic? Comment on the specific anomaly you observed, and possible reasons for it (device defects? measurement technique? etc.) 5 Part E: Conversion Time: The conversion time is the time it takes the ADC to convert the analog input voltage into a digital representation of the input voltage...

Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

Rochester - ECE - 216
EE216 Lab Project 425 February 20090BPIC Microcontroller LabIntroduction: This lab will introduce you to the hardware world of the microcontroller and programming these devices. Specifically, we will begin by working with Microchips PIC 16f84
Rochester - ECE - 216
MPLAB IDE User's Guide with MPLAB Editor and MPLAB SIM Simulator 2009 Microchip Technology Inc.DS51519CNote the following details of the code protection feature on Microchip devices: Microchip products meet the specification contained in thei
Rochester - ECE - 216
EE216 Lab Project 53 March 20090BPIC Microcontroller 16F84A(Timer/Counter and Interrupt)UIntroduction:Now that you are familiar with the basics of programming the 16F84A, we are going to explore some of its more advanced features. The fi
Rochester - ECE - 216
EE216 Lab Project 625 March 2009PIC Microcontroller 12F675 with ADCUIntroduction:This project will introduce you to a new type of PIC, the 12F675. What's so new about it? This PIC has only 8 pins! 2 for power and ground, the other 6 are for
Rochester - ECE - 216
EE216 Lab Project 7 PIC Microcontroller ApplicationU6 April 2009UComputer ControlledUAdvanced Windshield Wipers System (AWWS)UIntroduction:This lab will provide you with an opportunity to use the PIC Microcontroller in a real world e
N.C. State - MBA - 590
Legal/Marketing Issues In Pharmaceuticals Welcome! Dynamic process never static FDA regs, court decisions, statutes all subject to change Will discuss laws, ethical concerns, public policy, marketing and emerging technology roles.Technology ad
N.C. State - MBA - 590
Chapter 8Pre-Clinical StageAnimal Testing Animal Welfare Act (humane treatment) Applies to "research facilities" using live animals Under umbrella of US Dept of Agriculture Requires: minimization of pain, adequate vet care, use of anesthesia,
N.C. State - MBA - 590
<?xml version="1.0" encoding="UTF-8"?> <Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Key>fbdc6a5ec29dc9c094e6f8ef45090a4817740af0.ppt</Key><RequestId>2 95BCC1A4428DC52</RequestId><HostId>9rmFyNKENy8zbxyIQR36dfcQaL5
N.C. State - MBA - 590
Biotech Approvals for AgricultureChapter 15Agric crops genetically engineered Rising use in US 90% of soybeans 70% of cotton 40% of corn Consider the down stream effects Focus = Coordinated Framework for Regulation of Biotechnology (CFRB)
N.C. State - MBA - 590
Regulation of Animal ProductsChapter 14Jurisdiction of 3 Agencies FDA FFDCA USDA-APHIS VSTA EPA FIFRASimilarities w/ Human Regulation Many vet drugs are used in animals consumed by humans hence strong FDA oversight Veterinary medical
N.C. State - MBA - 590
Medical ReimbursementWhat makes the world go round. Chapter 12Reimbursement CRITICAL to commercial success in the health industry Importance of third party payor system Volume driven COVERAGE, PAYMENT RATE & CODING Expectations/history of Ame
N.C. State - MBA - 590
Biotechnology: European DimensionsChapter 18Role of European Commission Propose legislation to Parliament & EC Administer community policies Enforce community law (w/ Court of Justice) Negotiate international agreements DG = Directorates-Gene
N.C. State - MBA - 590
Development & CommercializationChapter 17The Rationale for Partnering Most major breakthroughs incur tremendous costs Discovery & development can be just the beginning of huge costs "Partnering" offers a bridge to specialized expertise and shar
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Montana - MA - 225
Eastern Washington University - CSCD - 501
11019 0.7812 0.3117 0.7722 0.778 0.5610 0.3317 0.3524 0.1222 0.705 0.52120
Eastern Washington University - CSCD - 501
11226 41.79232 29.65194 23.01144 8.33220 48.48219 12.2024 39.5342 7.77285 43.6445 27.15218 36.23245 29.121000
Eastern Washington University - CSCD - 501
11526 41.79232 29.65194 23.01144 8.33220 48.48219 12.2024 39.5342 7.77285 43.6445 27.15218 36.23245 29.12197 48.75144 7.29162 41.361000
Eastern Washington University - CSCD - 501
1501981 4285.29755 2654.991684 3202.062683 2076.033648 1888.143060 1706.932111 98.013544 1937.721401 2684.794026 3370.182798 2968.72937 3049.5550 3780.734569 2901.433372 185.281483 3030.573027 3039.902461 4024.442375 1625.721067
Eastern Washington University - CSCD - 501
11001981 4285.29755 2654.991684 3202.062683 2076.033648 1888.143060 1706.932111 98.013544 1937.721401 2684.794026 3370.182798 2968.72937 3049.5550 3780.734569 2901.433372 185.281483 3030.573027 3039.902461 4024.442375 1625.721067
Eastern Washington University - CSCD - 501
12001981 4285.29755 2654.991684 3202.062683 2076.033648 1888.143060 1706.932111 98.013544 1937.721401 2684.794026 3370.182798 2968.72937 3049.5550 3780.734569 2901.433372 185.281483 3030.573027 3039.902461 4024.442375 1625.721067
Eastern Washington University - CSCD - 501
15001981 4285.29755 2654.991684 3202.062683 2076.033648 1888.143060 1706.932111 98.013544 1937.721401 2684.794026 3370.182798 2968.72937 3049.5550 3780.734569 2901.433372 185.281483 3030.573027 3039.902461 4024.442375 1625.721067
Eastern Washington University - CSCD - 501
CScD-501, Winter 2009 Assignment 2: Divide and Conquer Characterizing MergeSort and Tuned QuickSort Due: 2009 February 11Sun makes the source code for all of their classes available, so that we have access to the source code for java.util.Arrays.cla
Eastern Washington University - CSCD - 501
CScD-501, Winter 2009 Assignment 1: The Greedy Method Applied To Job Scheduling by Open Bidding Due: 2009 February 2At the 2005 Pacific Northwest regional contest for the International Collegiate Programming Contest, Problem H provides a problem tha
Eastern Washington University - CSCD - 501
/* Linear Assignment Problem: find the optimal assignment of * n agents to n tasks. This is the branch-and-bound solution, * using a bounding function based on the upper bound for a solution, * that is, on the agents already assigned and then th
Eastern Washington University - CSCD - 501
/* Graph.java: mixed adjacency matrix / adjacency list implementation * * Author Timothy Rolfe * loosely based on Robert Sedgewick's Algorithms in C+ */import java.util.*;import java.io.*;public class Graph{ / Used by Prim and
Eastern Washington University - CSCD - 501
12Coeur d'AleneCoulee CityDavenportEllensburgGeorgeLeavenworthMoses LakePascoRitzvilleSandpointSpokaneSprague"Coeur d'Alene" "Sandpoint" 48"Coeur d'Alene" "Spokane" 35"Coulee City" "George" 55"Coulee City" "Leavenworth" 91"Co
Eastern Washington University - CSCD - 501
12ConnellCoulee CityDavenportEllensburgGeorgeLeavenworthMoses LakePascoRitzvilleSpokaneSpragueWilbur"Connell" "Moses Lake" 46"Connell" "Pasco" 38"Connell" "Ritzville" 45"Connell" "Wilbur" 99"Coulee City
Eastern Washington University - CSCD - 501
5 From Levitin's exampleabcde"a" "b" 3"a" "c" 1"a" "d" 5"a" "e" 8"b" "c" 6"b" "d" 7"b" "e" 9"c" "d" 4"c" "e" 2"d" "e" 3
Eastern Washington University - CSCD - 501
import java.util.*;import java.io.*;public class Interactive{/* * * * Exercising main for the graph * *
Eastern Washington University - CSCD - 501
/* * Looking for a chance value for random number generation * * Author: Timothy Rolfe */public class ChanceValue{ public static void main(String[] args) { long limit, check=-1; int count = 0; limit = check = System.n
Eastern Washington University - CSCD - 501
/* TestSpeed in C */#include <time.h> / clock#include <stdio.h>#include <stdlib.h>#include <unistd.h> / sysconf#include <sys/times.h>/*UNIX time value: number of seconds since 00:00:00 on January 1, 1970 (GMT).This is based on informat
Eastern Washington University - CSCD - 501
#include <stdio.h>#include <stdlib.h>#include <unistd.h>struct counter_t { unsigned int hi; unsigned int lo;};struct counter_t access_counter(){ struct counter_t temp; /* Get cycle counter */ asm("rdtsc; movl %edx,%0; movl %eax,%1
Eastern Washington University - CSCD - 501
<?xml version="1.0" encoding="UTF-8"?><Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Key>c032afa060bfc0d39718a6097e464074644ee6c4.txt</Key><RequestId>541BB071564C72D9</RequestId><HostId>jT3YvjBgIaQdy3UrWb/XODgC0Pwn
Eastern Washington University - CSCD - 501
Alternative Divide-and-Conquer Fibonacci With Memoization/* On the website "Richard Murillo on Software Development" one finds * * http:/blogs.msdn.com/rimuri/archive/2008/10/15/utilizing-memoizationand-dijkstra-s-fibonacci-algorithm-to-compute-larg
Eastern Washington University - CSCD - 501
/* * Program to make change, showing both a greedy approach and two * dynamic programming algorithms - the greedy approach fails for * some inputs; dynamic programming always gets an optimal solution. * * Given a set of n coin denominations, bot
Eastern Washington University - CSCD - 501
Change Making: Greedy Heuristic and Two Dynamic Programming Algorithms/* * Program to make change, showing both a greedy approach and two * dynamic programming algorithms - the greedy approach fails for * some inputs; dynamic programming always gets
Eastern Washington University - CSCD - 501
Data read from file Coins30.txtChange desired: 34Greedy solutionChange to return 34 25: 1 1: 910 used for a total of 34Memoize solutionChange to return 34 10: 3 1: 47 used for a total of 34dumitru solutionChange to return
Eastern Washington University - CSCD - 501
/* * Coins: the dynamic programming change algorithm * * Brassard and Bratley, Fundamentals of Algorithmics (1996), pp. 263-64 * * Generate a table from which one can make change optimally from 0 * up to the amount required. The rows are for
Eastern Washington University - CSCD - 501
Making Change as a Dynamic Programming Problem/* * Coins: the dynamic programming change algorithm * * Brassard and Bratley, Fundamentals of Algorithmics (1996), pp. 263-64 * * Generate a table from which one can make change optimally from 0 * up to
Eastern Washington University - CSCD - 501
4 1 6
Eastern Washington University - CSCD - 501
1102550
Eastern Washington University - CSCD - 501
1 3 6 12 24 30
Eastern Washington University - CSCD - 501
/* * 0/1 KnapSack: Dynamic programming implementation * * Brassard and Bratley, Fundamentals of Algorithmics (1996), pp. 263-68 * * Author: Timothy Rolfe, based on notes in Brassard and Bratley */import java.util.Scanner;public class DK
Eastern Washington University - CSCD - 501
0/1 Knapsack as a Dynamic Programming Problem/* * 0/1 KnapSack: Dynamic programming implementation * * Brassard and Bratley, Fundamentals of Algorithmics (1996), pp. 263-68 * * Author: Timothy Rolfe, based on notes in Brassard and Bratley * * Langua
Eastern Washington University - CSCD - 501
/* * Integer knapsack problem: comparable with making change, in that * we have an indefinite number of items of each type, but here the * desire is not to minimize the number of items but to maximize the * value of the items included. * * Hen
Eastern Washington University - CSCD - 501
Integer Knapsack as a Dynamic Programming Problem/* * Integer knapsack problem: comparable with making change, in that * we have an indefinite number of items of each type, but here the * desire is not to minimize the number of items but to maximize
Eastern Washington University - CSCD - 501
/* Dynamic programming recursive _integer_ knapsack with memoization * * In the integer knapsack, we have an indefinitely large quantity * of each item. * * @see "Sedgewick, Algorithms in Java, Program 5.13, p. 225" * * Documentation given in
Eastern Washington University - CSCD - 501
Memoization Solution to the Integer Knapsack by Sedgewick/* Dynamic programming recursive _integer_ knapsack with memoization * In the integer knapsack, we have an indefinitely large quantity * of each item. * @see "Sedgewick, Algorithms in Java, Pr
Eastern Washington University - CSCD - 501
/* * Dynamic programming solution of the 0/1 knapsack. * * Author: Timothy Rolfe * * Instead of using the items one at a time across all weights, * this algorithm computes the complete solution vector for each * weight. Consequently the matr
Eastern Washington University - CSCD - 501
Page 1Rats in a Maze - Recursive Backtracking Implementation/* Recursive implementation of the Rats in a Maze problem. * The main and inputMaze are taken from Sahni's Program 9.12 * - backtracking with an explicit stack. * * Author: Timothy Rolfe