Pre-class Assignment
Complete participation activities for 12.1-12.3.
Announcements
- Lab 3 is out and will be due Thursday March 7th
- RIBS is installed on requested computers in Singer 246.
- Send me the computer’s ID if you want it installed (FN + Windows + PAGE/BREAK and write down the name)
- You may pick up parts from me if you’d like to start on the ultrasonic sensors or LEDs before next week.
- You will continue using the same breadboards. You do not need to disassemble your board unless you need space. Please do not throw out any supplies (other than “consumables” like wire/resistors/capacitors/electrodes).
- I’m generally happy to give people extensions until after break, but the lab is designed for you to not have to work over break 🙂
- Do not forget to complete Challenge Activity 10.4.1 (and Challenge Activity 12.3.1 which we’ll go over today) before the end of Lab 3
- Office hours signup
Learning Objectives and Outcomes
In this lecture, you will...
- listen to a lecture about the implementation of synchronous state machines and how to handle waiting in state machines
By the end of this lecture, you should be able to...
- choose the appropriate period for the stoplight state machine
- implement the state machine without including waiting transitions
Lecture Content
12.4
12.7
- Another approach for handling waiting (e.g. for ultrasonic sensor):
<aside>
💡 It will be up to you to decide how to handle the ultrasonic sensor data in lab 3. You may use the “waiting” approach or create a state machine for the ultrasonic sensor. With either option, be careful such that your stoplight state machine is able to tick on time.
</aside>
Implementing Synchronous State Machines (RIMS Examples)
- Code Inside Ticker (RIMS example)
- Using TimerFlag (RIMS example) NOTE THE USE OF VOLATILE KEYWORD
In Class Exercises
Complete Challenge Activity 12.3.1, due by the end of lab 3. If time, continue working on lab 3.