Contents |
SOURCE CODE: LaTeX has been used to generate the documents for this class linked below. The Mercurial repository at http://hg.tedpavlic.com/courses/osu/ece209/ archives the source code of these lab resources.
LICENSING AND REUSE: Unless otherwise expressly stated, all original material of whatever nature created by Theodore P. Pavlic and included in this website and any related pages, including its archives, is protected by copyright and licensed under a Creative Commons Attribution-Noncommercial 3.0 United States License ("CCPL"). Use of this website is expressly conditioned upon the user's acceptance of the terms and provisions of the CCPL. Use of this site and any of the materials thereon constitutes acceptance of the CCPL by the user.
COMPONENTS: For your information, a list of required laboratory components is provided. You are not required to purchase electronic components for the class; they are stocked within the laboratory. However, you can use this list to gather these components at the beginning of each class.
% Store the frequency data in f vector. f = [1 2 10 20 30 40 50 60 70 80 90 100]*1000; % Store the measured RMS output data in rms vector. rms = [1.998 1.99 1.789 1.414 1.109 0.894 0.743 0.633 0.549 0.485 0.434 0.392]; % Convert RMS output data to gain by dividing by input RMS (2 Vrms). gain = rms/2; % Convert gain to deciBels (0 dB is unity gain). gaindB = 20*log10( gain ); % Plot the deciBel data on a semilog plot (makes hyperbolic 1/f asymptotes look linear). semilogx( f, gaindB, ); % Add a grid. grid on; % Add axis labels (with units!) and title. xlabel( ); ylabel( ); title( ); % Use the figure's "File" menu to save the figure in a desirable % file format (e.g., EPS or PNG) for inclusion in your report.
% Store the frequency data in f vector. f = [1 2 10 20 30 40 50 60 70 80 90 100]*100; % Store the measured peak-to-peak input data. vipp = [2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0]; % Store the measured peak-to-peak output data. vopp = [1.996 1.984 1.694 1.245 0.937 0.739 0.607 0.513 0.443 0.390 0.349 0.314]; % Store the measured vertical intersection data. deltaY = [0.125 0.247 0.901 0.975 0.828 0.687 0.578 0.496 0.432 0.383 0.343 0.310]; % Calculate gain vector in dB (./ is element-by-element division). gaindB = 20*log10( vopp./vipp ); % Calculate phase shift for LPF (in degrees). phase = -asin(deltaY./vopp)*180/pi; % % Alternatively, calculate phase shift for HPF (in degrees). % phase = asin(deltaY./vopp)*180/pi; % For theoretical curves, generate more frequency points. ftheory = linspace( min(f), max(f), 1000 ); % Generate s for each frequency. s = j*2*pi*ftheory; % For transfer function, store R and C values (change as necessary!). R = 10000; C = 0.01e-6; % Evaluate LPF transfer function at each ftheory. H = 1./(s*R*C + 1); % % Alternatively, evaluate HPF transfer function (uncomment). % H = s*R*C./(s*R*C + 1); % Theoretical gain. gaintheorydB = 20*log10( abs(H) ); % Theoretical phase (in degrees). phasetheory = angle(H)*180/pi; % Put magnitude plot in top row of 2 row by 1 column figure. subplot(2,1,1); % Plot the deciBel gain data on a semilog plot. semilogx( f, gaindB, , ftheory, gaintheorydB, ); % Add a grid. grid on; % Add axis labels (with units!) and title. xlabel( ); ylabel( ); title( ); % Put phase plot in bottom row of 2 row by 1 column figure. subplot(2,1,2); % Plot the phase data on a semilog plot. semilogx( f, phase, , ftheory, phasetheory, ); % Add a grid. grid on; % Add axis labels (with units!) and title. xlabel( ); ylabel( ); title( ); % Use the figure's "File" menu to save the figure in a desirable % file format (e.g., EPS or PNG) for inclusion in your report.
Likewise, the expressions needed to evaluate the HPF phase and HPF transfer function are% Calculate phase shift for LPF (in degrees). phase = -180 - asin(deltaY./vopp)*180/pi; % For theoretical curves, generate more frequency points. ftheory = linspace( min(f), max(f), 1000 ); % Generate s for each frequency. s = j*2*pi*ftheory; % For transfer function, store R and C values (change as necessary!). R1 = 33000; R2 = 100000; C = 200e-12; % Evaluate LPF transfer function at each ftheory. H = -(R2/R1)./(s*R2*C + 1); % Theoretical gain. gaintheorydB = 20*log10( abs(H) ); % Theoretical phase (in degrees) --- subtract 360 for delay semantics. phasetheory = angle(H)*180/pi - 360;
% Calculate phase shift for HPF (in degrees). phase = -180 + asin(deltaY./vopp)*180/pi; % For theoretical curves, generate more frequency points. ftheory = linspace( min(f), max(f), 1000 ); % Generate s for each frequency. s = j*2*pi*ftheory; % For transfer function, store R and C values (change as necessary!). R1 = 33000; R2 = 100000; C = 200e-12; % Evaluate HPF transfer function at each ftheory. H = -R2*C*s./(s*R1*C + 1); % Theoretical gain. gaintheorydB = 20*log10( abs(H) ); % Theoretical phase (in degrees). phasetheory = angle(H)*180/pi;
The following example is identical to the previous one, but it overlays three responses on top of each other with different line styles.% Define transfer function parameters R = 1e3; L = 0.5; C = 0.01e-6; % Define Laplace-domain variable s (as transfer function object) s = tf( ); % Define transfer function H = ( 1/(L*C) )/( s^2 + (R/L)*s + 1/(L*C) ); % % Alternatively, could use: % H = tf( [ 1/(L*C) ], [ 1 (R/L) 1/(L*C) ] ); % Generate step response in first figure figure(1); step( H ); grid on; % Generate Bode plot in second figure figure(2); bode( H ); grid on;
% Define three cases R1 = 1e3; L1 = 0.5; C1 = 0.01e-6; R2 = 10e3; L2 = 0.5; C2 = 0.02e-6; R3 = 20e3; L3 = 0.5; C3 = 0.03e-6; % Define Laplace-domain variable s (as transfer function object) s = tf( ); % Define three transfer functions H1 = ( 1/(L1*C1) )/( s^2 + (R1/L1)*s + 1/(L1*C1) ); H2 = ( 1/(L2*C2) )/( s^2 + (R2/L2)*s + 1/(L2*C2) ); H3 = ( 1/(L3*C3) )/( s^2 + (R3/L3)*s + 1/(L3*C3) ); % Overlay three step responses in first figure figure(1); step( H1, , H2, , H3, ); grid on; legend( , , ); % Overlay three Bode plots in second figure figure(2); bode( H1, , H2, , H3, ); grid on; legend( , , );
The oscilloscope's "max" and "min" measurements find the most extreme data points available in the sampled data. A sampled square wave that quickly oscillates from 1 V to -1 V might have "ringing" overshoot transient that make its maximum and minimum values closer to 2 V and -2 V. In contrast, the "top" and "base" measurements look for the most statistically prevalent values. They are a "filtered" version of the maximum and minimum that gives the "steady-state" values. So for the same triangle wave, the "top" and "base" will be 1 V and -1 V, as expected.
If you don't see a difference between "base" and "min" (or "top" and "max"), it's probably because your sampled waveform has very little overshoot and so the two measurements agree.
Note that a poorly calibrated 10:1 probe can cause ringing even when no ringing exists in the actual signal. If you are seeing a lot of ringing for all signals you try, then your probe may need some adjustment. See the tip below about ringing on 10:1 probes.
What kind of probe are you using? Is it a 10:1 probe? Is it a 1:1 probe? Whatever type of probe it is, your oscilloscope channel's probe setting must be set to agree with it.
Press the channel button (either 1 or 2) and look for a "Probe" soft key at the bottom-right of the screen. It will let you set it to 1, 10, or 100. Set it for the type of probe you have.
Remember that 10:1 probes have 9 times the impedance of the oscilloscope at all frequencies. As a consequence, they act like a 1/10 voltage divider at all frequencies. Their benefit is that they draw less current from the circuit and they treat all frequencies the same way. In contrast, a 1:1 probe draws 10 times the current from the circuit and creates a voltage divider which filters out high frequencies.
Make sure your function generator is calibrated for high output impedance load. Look for a HIGH Z [1, 2] mode in the output settings (also called output termination). After changing this setting, go back to your waveform settings and enter the correct amplitude.
- Recall from your electromagnetics classes (e.g., ECE 311/312) that transmission lines must be terminated to prevent reflections. Conventional terminating loads are 50 ohms, which means that a function generator on one of these lines must drive a 50 ohm load. So the function generator designers have embedded a 50 ohm load as the output impedance of the scope and purposely deliver twice the desired amplitude. When connected to a 50 ohm load, the resulting voltage divider provides the right amplitude because it has a gain of 0.5.
- In our class, load impedances (e.g., inputs to amplifiers) are much higher, and so the resulting voltage divider with the 50 ohm output impedance has near unity gain. Telling the function generator about our "HIGH Z" load prevents it from doubling the output.
- NOTE: When you change to "HIGH Z" mode, the function generator will change your output setting to twice its original amplitude. You will need to readjust it.
- Keep in mind that there is always a voltage divider at the output of the function generator, and so it is always best to use your digital multimeter (DMM) or your oscilloscope to tweak the function generator's output.
Use a 10x (or x10 or 10:1) probe to increase the high-frequency impedance seen by the device under test (DUT).
- The capacitance of a standard 1x (or 1:1) probe creates a low-pass filter. A 10x probe adds series capacitance and resistance to compensate for this effect.
- The extra resistance of the probe is almost exactly 9x the input resistance of the scope, and so the signal on the scope is scaled by a tenth. Use the scope's probe settings to automatically scale it to fix this.
The probe may need to be compensated. Please do not attempt this task yourself on the lab probes. However, recognize how it is done and file it away in your long-term memory for the next time you see ringing on a scope.
Your breadboard came with screw terminals for a reason. Banana plug connectors can plug into the terminals. Thus, setup your power rails by running wires from the three or four banana terminals on your board. When you're ready, plug your power supply into the banana connectors directly. It's much more convenient.
Unfortunately, many students throw away their banana connectors rather than attaching them. In the future, assemble your breadboards completely; they work better that way.
On the other hand, die-hard high-frequency analog prototypers will abandon breadboard use entirely for setting up "dead-bug" circuits on a bare copper ground plane. This practice, which places chips upside down making them look like dead bugs, can improve performance but is less flexible (it can require glue in some cases, and will definitely require solder). In our lab, using big enough bypass capacitors (see "Power supply noise" tip above) is the closest we'll get to low noise prototyping.
Every real operational amplifier (OA) has a small current imbalance between its inputs that manifests itself like a small DC source connected to one of the inputs. It is this additional signal that is causing your output to do strange things.
There are several ways to go about balancing operational amplifier input currents. For example, most OA's have "balance" pins that can be used to null the offset with a potentiometer. Before you build your circuit but after you wire power to your operational amplifier, you tie the outer legs of the potentiometer to the two balance pins, and tie the wiper to the negative rail. Short the inputs of the OA together, and adjust the pot wiper until zero appears on the output (when the operational amplifier is powered on, of course). When balance pins are not available, a very similar procedure can be used to add or subtract a small offset to the inputs of the OA.
Even after calibrating the OA input offset, you may still see output offsets (especially if you adjusted the operational amplifier when it was removed from the rest of the circuit). Even when currents into the OA are equal, if the equivalent resistance to ground differs, those equal currents will generate unequal input voltages. So try tricks to make the resistances looking out of the inputs look similar. For example, instead of shorting your non-inverting input to ground, tie it to ground with a resistor. Adjust the resistor size until your offset goes away.
Keep in mind that OA offset varies with temperature and can drift with time. One of the reasons why electronics are "burned in" at the factory is to reduce the rate of drift (here, voltage references come to mind). Therefore, nulling offset is a much more complicated problem in a product that has a lifetime longer than one class time.
Use a bypass capacitor across your power rails and possibly near your circuit elements.
- Choosing the size and type of each of these can be complicated.
- A good rule of thumb is to put pretty large capacitors (e.g., multiple microFarads) at the central power rails and slightly smaller (e.g., 0.001–0.1 microfarads) on the power pins at each component.
Stray parasitic capacitance is everywhere. In fact, the pins of an IC and the air between them form a capacitor of at least a few picoFarad. If you can, try to choose circuit elements that dominate over or compensate for these strays.
If setting an RC, choose a low R to give you a high C; however, realize that the low R may result in a higher power draw from your circuit.
Potentiometers are often used as two-terminal devices in this laboratory as variable resistors. Instead, try using all three terminals. A potentiometer is nothing more than a voltage divider, and the screw moves the output of the voltage divider (the middle pin) from the high voltage to the low voltage. If you need to tune a voltage divider, just use a potentiometer instead!
Keep in mind that you should probably choose a potentiometer with a size that only draws a few milliamps at most from your circuit. Even though you probably only care about the resistance ratios, you should care about the current draw (and power dissipation) as well. If not for any other reason, it will keep you from getting blisters when you touch your circuit.
Make sure that you didn't swap your collector and emitter (i.e., make sure you don't have your transistor plugged in backwards).
Take a look at the "Arrangement of n-Doped and p-Doped Regions" in Figure 1.2 of the lab text. As you can see, the only difference between the emitter and the collector are the "size." The base-emitter diode is "small" and the base-collector diode is "large." As a consequence, a transistor "works" when emitter and collector are reversed, but the current gain will be very low (e.g., the collector current might be equal to the base current). Our models of a transistor assume that the current gain is relatively infinite, and so they will poorly predict how a circuit will work in the other case.
Because of the "size" of the base-emitter diode, it is easy to reach the reverse breakdown voltage of the base-emitter diode if it is connected improperly. So hooking a transistor up "backwards" can either damage the transistor or simply produce a poorly performing circuit.
Great reference for advanced students. Classic electronics reference. Highly respected. The [analog] electronics bible.
Standard microelectronics text. More focus on younger undergraduate student audience. Lots of details, but very little breadth. Poor reference for advanced students. In fact, so many details are given that the text can be a poor reference for novices as well.
This website presents lengthy discussions of circuits for beginners. The discussions are interesting and include helpful animations that treat electric potential like fluid flowing into and out of resistors. There are also sections that are meant to be displayed on a whiteboard, and so those pages read like lectures.
There are too many good pages to list here. You may want to start looking at the master index of circuits ("circuit stories").
This web page is a treasure trove of useful circuit information.
Engineers are not scientists in the traditional sense. Scientists generate knowledge about the natural world by observing natural phenomena (in fact, the word "science" comes from the Latin for "knowledge" or "knowing"). Engineers use that knowledge to generate new technologies that aid in human activities, but they are rarely concerned with generating new knowledge about the natural world. Instead, engineers generate knowledge about their own creations. While the subject matter is different, the method behind the generation of knowledge is identical. That is, engineers are "technoscientists"; they use the scientific method to generate knowledge about technology.
In the engineering laboratory, you should practice all of the steps of the scientific method. In particular,
These steps should influence everything you do in the lab and everything you write in your report.
- Define the question (e.g., "How does a certain filter respond to a generic input signal?")
- Gather information and resources (e.g., recall your operational amplifier theory and the physical characteristics of passive electronic devices)
- Form hypothesis (e.g., "The filter will act like an abstract linear time-invariant system with transfer function H(s).")
- Perform experiment and collect data (e.g., measure magnitude and phase response at several frequencies)
- Analyze data (e.g., plot the data)
- Interpret data and draw conclusions that serve as starting point for new hypothesis (e.g., compare measured and expected responses and draw the conclusion that the theoretical model matches the qualitative low-pass behavior of the system but matches poorly in the neighborhood of the corner frequency. Suggest that cable resistance or component tolerances may have changed the effective corner frequency. Suggest a new experiment that measures cable resistance and repeats trials over several components with tight tolerances)
- Publish results (e.g., submit your lab report)
- Retest (e.g., assume that others will read and respond to your published report by following your suggestions for future work)
A good section structure inspired by the scientific method is:Alternatively, the conclusions section could be called an "Analysis" section and a new "Conclusions" section could be added that summarizes the report. The section structure you choose should help reinforce the message you are communicating in your report; keep the steps of the scientific method in mind.
- Introduction – the purpose of the lab (i.e., define the questions that you are trying to answer during the experience)
- Procedure – what was done (i.e., describe the experimental method)
- Theoretical results – what was expected (e.g., your hypothesis would fit nicely here)
- Measured results – what was observed (i.e., present your data without drawing conclusions)
- Conclusions – explanation of measured results and suggestions for future work
- Interpret the data to show how it responds to the relevant questions of the experience – use the data to test your hypothesis.
- Suggest starting points for new hypotheses that explain the observed differences from the theoretical results – if possible, suggest new experiments to test these new hypotheses.
For the lab reports you submit to me, you do not need an abstract nor any appendices. With the possible exception of hand-drawn figures, all material should be in-line with the text of the document.
Regardless of your section choices, be sure to pay attention to the course policies on lab reports (e.g., include a cover page with table number, group member names, instructor name, section, etc.).
Reports should be written from the following point of view: the reader is knowledgeable on the subject of electronics but knows little of your project. You must, therefore, explain your project in the most organized, economical fashion possible. This is good practice as this will, most likely, be the point of view for your monthly/quarterly/yearly reports in industry. This neatness and readability of your report is a significant factor as well as the actual contents. You should try to explain to the reader how the different parts of this circuit work in a clear and organized fashion.
For myriad reasons, professional technical documents are rarely produced with popular programs like Microsoft Word. In areas that are highly influenced by mathematics (e.g., engineering), the free TeX typesetting system dominates. Many TeX (pronounced "tech") users prefer the LaTeX suite of macros to simplify common typesetting tasks.
TeX documents, like the source code for computer programs, start as text files that are later "compiled" into their final document form. A typical TeX workflow is
- Edit document source code in a standard or specialized text editor. For example, a text file called "mydocument.tex" could contain the LaTeX code:
\documentclass{article} \begin{document} \textbf{Hello world!} \end{document}- "Compile" source code to produce printable document. The "mydocument.tex" file would produce a "mydocument.pdf" that would contain the bold text:
Hello world!A good editor will typically provide a quick way (e.g., a "LaTeX" button on the graphical user interface) to compile your code.
If you want to compile your code manually, you can use PDFLaTeX with the commandpdflatex mydocument.texor you can use LaTeX with the commandslatex mydocument.texThe difference between these two methods has an impact on what type of figures you can include (i.e., EPS files versus PDF, GIF, JPG, or PNG files). See below for details.
dvips mydocument.dvi
ps2pdf mydocument.ps
- View printable document and repeat process to make changes (e.g., you could change the \textbf{Hello world!} line to be simply Hello world! to get rid of the bold).
Thus, many people feel that TeX typesetting is more like programming than it is like using standard word processing tools. So it's not surprising that you'll need a "compiler", editor, and viewer (note: the ECE computer labs are already equipped with everything you need to get started).
Then, in the main part of your document, you can choose whether to include your graphics as "floats" or not. Most figures in books are "floats." That is, they do not appear exactly where they are mentioned in the text. Instead, they "float" to a convenient place (e.g., the top of the next page). In lab reports, people sometimes prefer that their graphics do not float.\usepackage{caption} \usepackage{graphicx}
Alternatively, if you want the figure to be typeset EXACTLY where you place it within your source code, use lines like\begin{figure} \includegraphics[width=0.5\columnwidth]{my_graphics_file.png} \caption{A nice caption for my figure.} \label{fig:a_unique_fig_label} \end{figure}
That is, replace the figure environment with a center environment and replace the \caption line with a \captionof{figure} line.\begin{center} \includegraphics[width=0.5\columnwidth]{my_graphics_file.png} \captionof{figure}{A nice caption for my figure.} \label{fig:a_unique_fig_label} \end{center}
- Quizzes and pre-labs: 20%
- Lab reports: 40%
- Attendance, active participation, and clean-up: 10%
- Final exam: 30%
At instructor’s discretion, grades may be made available on Carmen.
- For two labs, students complete an individual pre-laboratory assignment due at the beginning of class. Each of the other labs starts with an individual closed-book and closed-notes quiz over its material. Students should arrive to class on time for the quiz.
- The purpose of the pre-lab quizzes and assignments is to ensure that each student has reviewed the lab and its theoretical background. The laboratory experience will move more smoothly and be more beneficial to the student if the pre-lab study has been completed.
- Pre-lab assignments should be completed INDIVIDUALLY by EACH STUDENT. Pre-lab submissions are NOT group assignments.
- The final exam will be a written test over theory discussed in the class.
- There will be no hands-on laboratory component to the final exam.
- Students are required to attend all labs.
- Students will work in groups of two or three.
- See the lab report writing resources for more information about the contents of a good lab report.
- Each group will submit one lab report.
- On your cover page, include:
- the class identifier (i.e., "ECE 209")
- the section day and time (e.g., "Tuesday 4:30")
- instructor name (e.g., "Instructor: Jane Engineer")
- names of all members of group (grades are given to these members)
- your table number (posted within each cubicle)
- Lab reports must be typed and pages must be numbered.
- If you must use hand-drawn figures or hand-written calculations, use engineering graph paper. Include them either as attachments to the end of the report or paste or photocopy them into the body of the report.
- Tables and figures should be numbered and have descriptive captions. Because these items naturally float to the best location on the page, they should be referred to by their name and not be their relative position (e.g., refer to "Table 1" and not "the table below").
- Lab reports are due at the beginning of the next lab session and will be penalized 10% per day late (instructor policy takes precedence).
- Lab report grading (instructor policy takes precedence):
- Lab work (30%) – evidence of having successfully completed the lab tasks.
- Figures/Tables/Equations (20%) – the main technical details of the report
- Discussion (50%) – usually divided (depending on lab) into:
- Purpose – the purpose of the lab
- Procedures – how the lab was done
- Theoretical results – expected results
- Measurement results – actual results
- Conclusions – explanation of actual results
- Again, see the lab report writing resources for more information about the contents of a good lab report.
Students must attend all labs. If a lab needs to be missed, arrangements should be made with the instructor at least 24 hours prior to the lab so that the lab work can be made up. The instructor reserves the right to determine when make-up work is allowed. Students are responsible for all assignments, change of assignments, announcements, and other course-related materials.
Late lab reports will not be accepted unless prior (i.e., at least 24 hours in advance) arrangements have been made with the instructor.
Although groups may work together outside of class when deciphering their results, all handed-in material must be unique. That is, each group should actually compose their lab reports separately.
Likewise, students may help each other outside of class when completing the pre-lab assignments, but the assignment submissions should reflect individual work and not any sort of collaboration.
Any written material turned in to the instructor (lab reports, pre-labs, exams, etc.) falls under the purview of the University and the ECE Honor System rules. If a lab report does not represent a group’s understanding of the material or a pre-lab or exam does not represent an individual’s understanding of the material, it will be considered to be an honor code violation. In these cases, the incident must be reported to the ECE department.
Students with disabilities that have been certified by the Office for Disability Services will be appropriately accommodated and should inform the instructor as soon as possible of their needs.The Office for Disability Services
150 Pomerene Hall
1760 Neil Avenue
Telephone: 614-292-3307, TDD: 614-292-0901
http://www.ods.osu.edu/
Course supervisor: Professor Steven B. BibykCatalog Description:
Circuits and electronics lab covering basic electronics and principles of electrical measurements, signal conditioning, and instrumentation.
Course Prerequisities: 205, Math 415
Course Prerequisities or Concurring: 301, acceptance in ECE or Engineering Physics majorCourses that require 209 as prerequisite: 327
Prerequisites by Topic:
- Math: Steady-state and transient solutions to linear differential equations with constant coefficients.
- Circuits: Kirchoffs voltage and current laws, ability to interpret circuit problems from electrical schematics, recognition of frequency domain methods.
Course Objectives:
- Apply math and science and be able to use the laws of electrical circuits. (Criterion 3(a))
- Conduct experiments to measure the behavior of electrical circuits. (Criterion 3(b))
- Ability to design a system of components to meet the needs of frequency filtering of signals received from a function generator. (Criterion 3(c))
- Work in teams at a lab bench. (Criterion 3(d))
- Identify, formulate, and solve electrical circuit problems. (Criterion 3(e))
Topics and (# of Lectures)
- Introduction to the Digital Oscilloscope and Function Generator (1)
- Meters, Measurements, and Errors (1)
- Introduction to Operational Amplifiers and Step and Frequency Response of First-Order Circuits (1)
- Frequency Response of First-Order Active Circuit and Second Order Passive Circuit (1)
- Properties of Second-Order Circuits (1)
- Fourier Analysis (1)
- Transistor Switch, Nonlinear Circuit, Amplifier, and Properties of Diodes (1)
- D/A Application (1)
Class Meeting Pattern
- 1 4-hour lab
A good follow-up circuits lab: ECE 327 [OSU ECE's ABET Syllabus, sample course web page]
Website and original documents Copyright © 2007–2010 by Theodore P. Pavlic Licensed under a CC-BY-NC 3.0 License |
|