Course informationOutlineWelcome to ENGR 40M! This course provides an introduction to the broad field of electrical engineering through a series of hands-on projects. Countless devices use electronics, from cars to clocks to cameras to cell phones, but the way they work is usually hidden and often mysterious. Our objective is to demystify the world of electronics by tearing things apart (both literally and figuratively) so that you can understand how they work, and give you the skills to construct electronic devices of your own. We'll find that not only do many devices contain some electronics inside, but most of them contain small processors as well. Once you grasp the power of adding computing to physical devices and understand how a processor interfaces with other circuitry, you can use this knowledge to construct programmable electronic devices on your own. Part of the course is about the theoretical analysis of circuits, which you'll practice on the homework and prelab assignments. The other half is the construction and debugging of actual electronics projects, which you'll learn from making things in the lab. During the quarter, you will build:
By the end of the course, you will have the theory for analyzing the behavior of simple analog and digital circuits, the practical skills for constructing, programming, and debugging electronic devices of your own, and the ability to explain some of the countless ways electronic circuits are used in the modern world. Specifically, you will be able to:
Learning to debugWe fully expect that you will find some of the material in the class a little confusing at first, and that some of your labs won't work on the first try. One of the most important skills we want you to develop in this class is the ability to debug stuff that is going wrong, whether it is the logic you are using for the homework problem, or figuring out what is going on in the lab. But we also know that being confused can be frustrating, and it is hard to imagine that you can figure stuff out when you are confused. So if you ever find yourself in this state, please reach out to one of the teaching staff. This class has a lot of teaching staff and communication tools to help you deal with exactly this issue. But we can only help you if you reach out and let us know. PrerequisitesYou will need some prior experience with C/C++ or Java programming, such as CS106A. If it's been a while since you took CS106A, you may want to brush up a little on your skills. We'll provide some warm-up problems so you can get a feel for the programming difficulty level, and there will be one or two review sessions early in the quarter if you need help. We will not assume any previous knowledge in physics, specifically in electricity and magnetism. We'll cover voltage, current, power, etc., from the bottom up, and there will be extra opportunities for review on this core material if it went too fast. You do not need to have taken calculus or differential equations to succeed in this course; the assignments and tests will not require you to take integrals or derivatives. However, we will use calculus to provide a mathematical grounding for many concepts throughout the course, so knowing it will be helpful. UnitsUndergraduates must take the course for 5 units; graduate students may take it for 3 or 5 units. There is no difference in workload. Textbook
GradingLab: 50%. This course is as much about learning to construct and debug real things as it is about learning to analyze circuits, so half of your grade is based on your work in lab. Homework: 10%. The homework is where you'll drive home the concepts from lecture. While it's numerically a small part of your total grade, understanding the homework is the best way to prepare for the exams. Midterm: 20%. The midterm will be in class during week 6. Final: 20%. The final will be comprehensive, since nearly everything in this course builds on previous material |