\setcounter{numTAs}{1} \setcounter{totalSections}{1} \def\secNum{{"100",""}} \def\tenSchFileName{{"",""}} \def\classTime{{"Thursdays from 08:30 am to 11:00 am in Tolentine Hall 409.",""}} \def\classRm{{"Tolentine 409",""}} \def\classLive{{"",""}} \def\classInstructor{{"Edward Berde",""}} \def\classInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory.html",""}} \def\classInstrOffHrs{{"Thursday 11:00am to 1:00pm, or other times by appointment",""}} \def\classInstrLive{{"",""}} \def\labTime{{"Thursdays from 08:30 am to 11:00 am in Tolentine Hall 409.",""}} \def\labRm{{"Tolentine 409",""}} \def\labLive{{"",""}} \def\labInstructor{{"Edward Berde",""}} \def\labInstrContact{{"https://www1.villanova.edu/university/engineering/academic-programs/departments/electrical-computer/directory.html",""}} \def\labInstrOffHrs{{"Thursday 11:00am to 1:00pm, or other times by appointment",""}} \def\labInstrLive{{"",""}} \def\TA{{{"Robert Otten",""},{""}}} \def\TAEmail{{{"rotten@villanova.edu",""},{""}}} \def\TAOffHrs{{{"By Appointment",""},{""}}} \def\TARoom{{{"",""},{""}}} \newcommand\semester{Fall 2025} \newcommand\rsemester{202620} \newcommand\courseNum{ECE 5450} \newcommand\courseName{Microcontrollers \& Applications} \newcommand\courseCoordinator{Edward Berde} \newcommand\credits{3} \newcommand\contactHrs{3} \newcommand\lecture{1} \newcommand\lab{1} \newcommand\undergradCourse{1} \newcommand\isFreshmanCourse{0} \newcommand\isCustomElecPolicy{0} \newcommand\AIPolicyExists{0} \newcommand\isClassLive{0} \newcommand\isLabLive{0} \newcommand\meetingMiscExists{0} \newcommand\isClassInstrLive{0} \newcommand\isLabInstrLive{0} \newcommand\instrMiscExists{0} \newcommand\hasTARoom{0} \newcommand\meetingDesc{2.5-hour Lecture/Lab Session} \newcommand\meetingMisc{Special notes on meeting info go here, if specified} \newcommand\instructorMisc{Special notes on instructor(s), TA(s) go here, if specified} \newcommand\textBookExists{0} \newcommand\textBookReqd{0} \newcommand\textBookMiscExists{0} \newcommand\referencesExist{0} \newcommand\txtBkAuthExists{0} \newcommand\txtBkPublExists{0} \newcommand\txtBkYrExists{0} \newcommand\txtBkISBNExists{0} \newcommand\textBookTitle{Embedded Systems: Introduction to Arm R CortexTM-M Microcontrollers, Fifth Edition} \newcommand\textBookAuth{} \newcommand\textBookPub{} \newcommand\textBookYr{} \newcommand\textBookISBN{} \newcommand\supplMaterials{N/A} \newcommand\refPapers{References go here, if specified} \newcommand\textBookMisc{} \newcommand\catalogDesc{Microcontroller design and the following related topics: - General purpose input/output - Counters/timers - Pulse-width Modulation - A/D conversion - Stepper Motor Control - Use of Integrated Development Environments - Practical Application Programming in C++ } \newcommand\preReqs{C++, C, Java, or other object-oriented programming language, or a high level of self-taught proficiency in one or more object-oriented programming languages.} \newcommand\coReqs{None} \newcommand\coreRequirement{Elective for BS EE/CPE} \newcommand\courseExpectation{Microcontrollers (MCU) are used everywhere today...in microwave ovens, engine controls in cars, automatic bread makers, to distributed I/O Controllers in Mainframe Computers. This course is designed to provide a learning experience that will prepare students to enter the design community ready to design and work with these systems. Through a combined lecture and laboratory environment, the students will be introduced to the concepts of microcontrollers and their uses. These concepts will then be utilized, in the laboratory, to provide solutions to typical applications problems. Many applications problems will be assigned, and the students will be required to design and implement the solutions. The goal of this course is to provide students with the knowledge of MCU architecture and application. By the end of the course students will acquire the following: (1) knowledge of the various software and hardware components of a microcontroller, (2) understanding of MCU design and instruction set architecture (ISA), and (3) ability to develop MCU applications using the C++ programming language. In addition to core microcontroller technologies, this course will cover essential ancillary topics that are necessary for completing a product development lifecycle and bringing a product to market. These topics may include: - Device Selection and Data Sheets, - Surface Mount Technologies, - PCB Design, - Enclosure Design and Manufacturing, - Startup Concepts including Team Formation, Prototyping, and Financing. } \newcommand\ABETOutOneA{1} \newcommand\ABETOutOneB{1} \newcommand\ABETOutTwoA{0} \newcommand\ABETOutTwoB{0} \newcommand\ABETOutTwoC{0} \newcommand\ABETOutTwoD{0} \newcommand\ABETOutThree{0} \newcommand\ABETOutFourA{0} \newcommand\ABETOutFourB{0} \newcommand\ABETOutFourC{0} \newcommand\ABETOutFive{0} \newcommand\ABETOutSixA{0} \newcommand\ABETOutSixB{0} \newcommand\ABETOutSevenA{0} \newcommand\ABETOutSevenB{0} \newcommand\covTopics{\item - Introduction to MCU \item - MCU Functional Blocks and Capabilities \item - MCU Programming (Tools and Boards) \item - GPIOs / General Input-Output \item - I2C Bus \item - Timers \item - Analog to Digital Conversion \item - Digital to Analog Conversion \item - Pulse Width Modulators \item - HTTP/HTTPS Web Requests / APIs \item - Power Management / Deep Sleep States} \newcommand\isScheduleExternal{0} \newcommand\isScheduleCommon{1} \newcommand\scheduleRows{16} \newcommand\scheduleCols{2} \newcommand\scheduleHeight{1} \newcommand\schedule{\begin{table}[h!] \centering \caption*{Tentative Schedule for \textbf{All Sections}} \vspace{0.05in} {\renewcommand{\arraystretch}{1.5} \small \begin{tabularx}{\linewidth}{c|l} \toprule \large \textbf{Week} & \large \textbf{Topics}\\ \midrule \midrule 1 & MCU Introduction Introduction\\ 2 & Hardware Architecture and Instruction Set\\ 3 & Core MCU Programming\\ 4 & AI Integration in Programming\\ 5 & Memory Instructions\\ 6 & Control Instructions\\ 7 & Displays\\ 8 & Midterm\\ 9 & Semester Recess\\ 10 & Timers /Counters\\ 11 & Analog to Digital\\ 12 & Stepper Motor Integration\\ 13 & HTTP/HTTPS Web Requests / APIs\\ 14 & Pulse Width Modulation\\ 15 & Final Project\\ \bottomrule \end{tabularx} } \end{table}} \newcommand\gradingPolicy{\noindent Assignments (mix of mini-projects and homeworks) - 55\% \\ Midterm - 20\% \\ Final - 25\% \\ \\ \\ Letter grade scale: A(94--100), A--(90--93), B+(87--89), B(83--86), B--(80--82), C+(77--79),\\ C(73--76), C--(70--72), D+(67--69), D(63--66), D--(60--62), F(<60)} \newcommand\HWandLabPolicy{Late submissions will be assessed a 10\% penalty per day.} \newcommand\AIPolicy{\textcolor{red}{ Since you opted for an AI Policy, you should edit this part, choosing one of the following statements, modifying as desired:\\ \\ The use of AI-generated content is not permitted in this course. Its use will result in an academic integrity violation and a zero on the assignment.\\ \\ OR\\ \\ The use of AI-generated content is allowed in this course.\\ \\ OR\\ \\ The use of AI-generated content is permitted as follows: (a) for generating a first draft or (b) for generating an outline or (c) for generating XXX.\\ \\ AND, if AI is allowed:\\ \\ Even if you have significantly edited AI-generated material, you must identify the AI tool used to assist in generating your work. You are required to provide the name of the tool, date used, and prompts used to generate the output. As you may be required to submit the original AI output, you must keep a copy of the original output and provide it when requested. If questions arise about the authorship of submitted work, you are responsible for authenticating your authorship. You should save evidence of your authorial process, such as drafts, notes, version histories, and complete transcripts of AI assistance. }} \newcommand\AttendancePolicy{Attendance is Mandatory.} \newcommand\ElectronicsPolicy{\textcolor{red}{Since you opted for a customize electronics policy, you should edit this part. Your policy should address your general stance on recording of class sessions and the circumstances under which recording will be allowed or prohibited. If you generally prohibit recording, yet allow recording of certain classes for some reason, then ypu should notify all students that those classes will be recorded. If recording is permitted as an ADA accommodation for a student, you obviously should not identify that student(s).)}}