Course Syllabus ECE 206/L – Computer Programming for Electrical Engineers and Laboratory Department of Electrical & Computer Engineering 1. Course Number and Name: 2. Credit Units/Contact Hours: 3. Course Coordinator: ECE 206/L – Computer Programming for Electrical Engineers and Laboratory 3/5 George Law 4. Text, Reference Dale, Weem, and Headington, Programming and Problem Solving with C++, 4th ed., Jones and Bartlett Publishers, 2005. Software: NXC, BRICX Command Center (see Internet Resources below); Visual.net, Visio 2007 http://msdn06.e-academy.com/elms/Storefront/Home.aspx?campus=csun_e_ceng Internet Resources: http://bricxcc.sourceforge.net (BRICX command center download ) http://bricxcc.sourceforge.net/nbc/ (NBC/NXC tutorial, guide, sample) http://inside.catlin.edu/site/msrobotics/html/downloads.html (NXT Tutorial) http://bricxcc.sourceforge.net/nbc/nxcdoc/NXC_tutorial.pdf (NXC Tutorial) http://www.legoengineering.com/ (Lego NXT resources) www.uaerobotchallenge.com/Tutorials/NXT%20Tutorial.pdf (NXC Tutorial) 5. Specific Course Information a. Course Description Introduction to computer programming with emphasis on EE problem solving. Major topics include problem solving, algorithm development, hardware integration, and programming in NQC and C++. 2 hours lecture per week; one 3-hour lab per week. b. Prerequisites by Topic Students must have completed differential calculus (MATH150A). c. Required Course 6. Specific Goals for the Course a. Specific Outcomes of Instructions – After completing this course the students should be able to: 1.. To develop the students’ problem solving skills using the computer by way of NXT, NXC and C++ programming. 2. To provide early exposure to Electrical Engineering problem solving using computer. 3. To integrate software and hardware in system design. b. Relationship to Student Outcomes This course supports the achievement of the following student outcomes: a. An ability to apply knowledge of math, science, and engineering to the analysis of electrical engineering problems. e. An ability to identify, formulate and solve electrical engineering problems. 7. Topics Covered/Course Outline 1. Introduction to Computers/Microcontrollers 2. Engineering problem solving methodology 3. Flowcharting and Algorithm Development 4. NXT programming 5. NXC Programming 6. C++ Programming 7. Variables, Data Types, Operators, Expressions 8. Loops 9. Sensors and Control structures 10. Arrays, Strings 11. Functions, scope, and parameters 12. Input/Output 13. File 14. Miscellaneous Topics/Review Prepared by: George Law, Professor of Electrical and Computer Engineering, November 2011 Ali Amini, Professor of Electrical and Computer Engineering, March 2013