![]() ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() ![]() |
|||
2022-2023 ICS3U-E: AVR FOUNDATIONS | ||||
---|---|---|---|---|
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
IR: WA, JC, LD, JMi DF, ARC, BB, CT, BW, GD, JS, JMac RF: VJ, LMc, RS, AS |
Final Class Project 2.5b Development Period |
DER Due Tonight | ![]() WA, BB, JC*, GD*, DF, VJ, JMac, LMc**, JMi, ARC, RS, JS, AS, CT, BW |
|
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Project 2.5b Development Period |
![]() Wireless Control of Project 2.5a |
|||
![]() Wireless Control of Project 2.5a |
||||
VICTORIA DAY LONG WEEKEND (May 20 - 22) | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Nordic Semiconductor
![]() 14Core: nrf24 Projects ![]() |
Communication Protocols (Serial, SPI, I2C, RF, IR, BT) nRF: Radio Frequency MUST WATCH... ![]() nRF24L01 Transceiver (SPI-based): Getting Started, Arduino Guide AVR Foundations Workbook: pp. 85-88 RF24 Library (tmrh20) Class Documentation ![]() ![]() |
![]() ACES' nRF24L01+ BoB... ![]() |
![]() ![]() |
|
Rework your breadboard remote with the LTE-4206 |
![]() Wireless Control of Project 2.5a |
|||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
69 May 12 |
IRremote (V2.5) Library Documentation Note: Active Development! Find IR Codes |
Communication Protocols (Serial, SPI, I2C, IR, RF, BT) Creating a Universal Remote Good Tutorial: IRremote Library (Digital) IR Data Communication → → → |
F. Folarin's (ACES' 20, Waterloo '25) IR Remote ISP... ![]() ACES' Frame Player: Infrared Day 3 |
![]() ![]() Your 3mm Emitter: LTE-4206 |
South-Side DES Pairs![]() ![]() ![]() K. Shirriff's Earlier (Simpler): IRremote v2.5.0 |
Communication Protocols (Serial, SPI, I2C, IR, RF, BT) Day 2: IR as Data Carrier ![]() ![]() ACES' Frame Player: Infrared Day 2 |
(2 MUST reads) ![]() ![]() |
North-Side DES Pairs![]() ![]() |
|
![]() ![]() Distance vs Voltage ![]() |
Communication Protocols (Serial, SPI, I2C, IR, RF, BT) Day 1 (38k Hz IR Basics: No Code) A. Digital Break Beam (Voltmeter) ![]() B. Analog Proximity (LM358 OpAmp) ![]() |
Passive InfraRed (PIR) Sensor ![]() |
![]() Wireless Control of Project 2.5a |
|
![]() |
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Work Period Motor Commitment Project 2.5a Mechanical Final Class Prior to Saturday's DER Submission |
![]() Mechanical WA, BB, JC, LD, GD, DF, VJ, JMac, LMc, JMi, ARC, RS, JS, AS, CT, BW |
|||
M. McCutcheon's' ACES' Stepper Gem: ![]() ![]() ![]() (ACES '20) Mini CNC Plotter |
MUST WATCH!! ![]() MUST WATCH!! ![]() ![]() ![]() can be problematic! ![]() ![]() ![]() MOT-28BYJ-48 Datasheet RSGC ACES' Library-free Stepper Motor Example... ![]() ![]() ![]() (Brendan Lai RSGC '18) |
![]() ![]() ![]() |
CLOSED Loop System... ACES' PID Gem: ![]() ![]() (Queen's Eng. '22) Balance Beam ACES' Stepper Gem: ![]() ![]() ![]() (Mac. Eng. '21) Laser Projector |
|
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Polish... ...but Inspiring :) ![]() Servo Motor Works (build your own?) Servo Connections Servo Controller ![]() |
Motor Type 2: Servo Motors ![]() ![]() ![]() ![]() ![]() A brief introduction to AVR Timers... Timer1 Registers and Clock Prescalers ![]() ![]() |
|
![]() ![]() |
|
![]() |
![]() (Coded) DC Motor Control SN754410 Quadruple Half-H (Motor) Driver |
![]() Let's code... DCMotorControl.ino |
2.5a
|
|
![]() ![]() ![]() ![]() |
![]() (No Code) DC Motor Control (5V Relay) H-Bridge ACES' Frame Player: DC Motors 2 (Bi-directional) 5V MCU Control Logic over ? V Motor Power Supply |
![]() ![]() |
![]() ![]() |
|
BC Trip (April 17 - 21) | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() ![]() Download just ACESLogo.dxf ![]() |
LED Tester Case The H-Bridge ACES' Frame Player: DC Motors 2 (Direction) 5 V MCU Control Logic over 3-24 V Motor Power Supply |
RobotRoom... BJT Transistor H-Bridge ![]() H-Bridge Motor States ![]() |
DPDT Switch![]() H-Bridge Wiring ![]() |
|
60 |
![]() ![]() |
Introduction to DC Hobby Motors ACES' Frame Player: DC Motors 1 (Introduction, Speed, Torque,...) ![]() |
Sparkfun's ROB-11696 Hobby-Gear ![]() ![]() Understanding Gears GearGenerator.com |
![]() Brushed vs Brushless? ![]() |
EASTER LONG WEEKEND (April 7 - 10) | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() Tutorial ![]() DPDT Toggle Switches 5V DPDT Relay Fusion Case Frame Player: LED Tester Case |
Manual Toggle Switch Types
ACES' Frame Player: (DPDT) Relay (Uses, Switches, Bidirectional) Circuit II: 5V DPDT Relay ![]() |
![]() ![]() |
2.5a
![]() |
|
58 |
The Engineering Mindset: ![]() The Practical Engineer: ![]() ![]() |
Electromechanics Circuit I: Solenoid ![]() |
ROB-11015 5V Solenoid
![]() ![]() |
![]() Getting there with Eagle/Fusion 3D Rendering... ![]() |
Optocoupler ![]() |
![]() ACES' Frame Player: Fields ![]() (Grade 11 Medium ISP) Antikythera Mechanism |
SEPARATION of CONTROL Logic and DRIVE Power Power Supply Considerations |
N-Channel Switching Options BJTs (<1A) (3904, 2N4401, BC337) vs Darlington Array (<5A?) (TIP120) vs ULN2003 (DIP-8) vs MOSFETs (>5A?) (IRF520) |
|
UNIT 8. Design II: From EAGLE to FUSION 360 |
||||
![]() ![]() PCB Case Design ![]() |
![]() The Curse of the Engineer From Design I to Design II DESIGN THINKING and REFLECTION ACES' Frame Player: Design (Eagle to Fusion) |
Solder Joints
Design I: Our Counting Circuit BOARD VIEW (EAGLE Export →) ![]() |
2.3c
Design II: Our Counting Circuit 3D RENDER (→ FUSION 360 Import) ![]() |
|
Arduino Fuse Settings AVR Fuse Calculator |
Project 2.3c Perma-Proto ATmega328P with PCB Work Period |
![]() |
S. Appleyard's Car Body![]() |
|
MARCH BREAK (March 10 - 27) | ||||
Medium ISP Presentation and Publication | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Asynchronous Day (Parent/Teacher Interviews) ISP DER / Perma-Proto with PCB Preparation |
||||
![]() |
Medium ISP Presentations JMi, JC, GD, VJ, LM, AS, ARC |
![]() WA, BB*, JC, LD, GD DF, VJ, JMac LMc*, JMi, ARC, RS JS, AS, CT, BW |
||
![]() |
Medium ISP Presentations BB, DF, JS, CT, BW |
2.20b, 2.20c | ||
UNIT 7. Audio (Electret Microphone, MSGEQ7), 12-Key Telephone Keypad | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Digital...![]() |
![]() Medium ISP Presentations WA, LD ![]() |
Analog...![]() |
![]() |
|
![]() ![]() |
![]() Online Tone Generator ![]() ![]() ![]() Depth or Breadth? (Your call!) LCD Coding of the HD44780U |
LCD
Refresher![]() ![]() ![]() Custom LCD Character Function: createChar() |
![]() I2C Data Logger WA, BB, JC*, LD, GD*, DF, VJ, JMa, CT*, BW *LMc (Std, Ext)* JMi, ARC, RS, JS *AS (Std, Ext)* ![]() ![]() ![]() |
|
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
50 Feb 24 |
![]() ![]() |
What Does an Audio Engineer Do?
ACES' FramePlayer: Square2Sine ![]() ACES' FramePlayer: MSGEQ7 ACES' Audio-Responsive Devices: ![]() Matrix Equalizer Stick ![]() MSGEQ7 Prototype & Test Session |
![]() ![]() |
2.4
![]() L. McCartney's Full Size Perma-Proto Case ![]() |
49 Feb 22 |
![]() ![]() A Terrific Site... David Johnson-Davies' Technoblogy ![]() |
Brief Introduction to Audio Signals Terrific Introduction from Ohio State... ![]() ![]() ![]() ![]() (Technoblogy) ACES' FramePlayer: Audio (Passive) Filtering: ![]() ![]() ![]() Passive Filtering Design Tool |
My favourite IC? A 7-Band Audio Spectrum Analyzer The MSGEQ7 The Classic MSGEQ7 Blog... MSGEQ7 by J. Skoba ![]() |
Electret
Mic/Amp![]() ![]() ![]() ![]() Online Tone Generator ![]() |
FAMILY DAY WEEKEND (Feb 17-20) | ||||
UNIT 6. Design I: PCB Creation with EAGLE |
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
48 Feb 16 10:55 Dismissal (Guest Speakers Chapel) |
EAGLE Q&A/Work Period I STRONGLY recommend completing your EAGLE PCB Design(s) (while the information is fresh) for Project 2.3c and ISP and arrange with a few peers to place a group order for V1 ASAP |
|||
47 Feb 14 (Casual) |
![]() |
EAGLE (M3) Mounting Holes, Design Rules (ACES_THT.dru) CAM Processor (ACES_Generic.cam) Placing the Order... ![]() |
||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
46 Feb 10 |
![]() |
EAGLE Board View: Layers: Dimension, Top, Bottom, Silk Tools: Ratsnest, Text, Miter, Routing |
||
45 Feb 8 |
![]() |
![]() Schematic: Connecting parts : NET/Junction Tools Vcc, Vdd, Gnd, Vss, Vee EAGLE Generic Footprint Libraries: rcl, con-lsta, con-lstb, ic-package |
||
44 Feb 6 Period Rotation to P2 |
![]() |
![]() (dated, but still some useful assets) Application Orientation Projects, Preferences, ![]() |
||
CLASS | REFERENCE | HARDWARE | SOFTWARE/DESIGN | SUPPLEMENTAL |
Feb 2 (Asynch) |
||||
![]() |
||||
43 Jan 31 |
![]() RSGC ACES' PCB Summary RSGC ACES' Common Parts THT, SMT |
![]() ![]() (Somewhat Dated) Install Additional Parts Libraries... ![]() ![]() |
||
UNIT 5. Communication 1. Wired. (Serial, SPI, and I2C) and both Core and 3rd Party Device Libraries (Wire, LCD, RTC, SSD1306 etc.) | ||||
CLASS | REFERENCE | HARDWARE | SOFTWARE/DESIGN | SUPPLEMENTAL |
I2C DAY 2 of 2: Communication with I2C Devices and Sensors Using Wire Library ONLY! | ||||
Behind the curtain... Wire-Level RTC Exercises ![]() 1. How I2C Communication Works 2. TC74 Tiny Serial Thermal Sensor 3. DS1307 TimeKeeping Registers 4. DS1307 Square Wave Exploration Great Hardware & Software Design starts with Datasheets ![]() ![]() |
||||
I2C DAY 1 of 2: Introduction and DS1307 Library | ||||
P. Stoffregen's (Terrific) RTC Tutorial Arduino and UTF-8 Arduino Serial Monitor employs Unicode UTF-8 Encoding |
Breadboard an I2C Bus with the DS1307RTC I2C I2C Basics, I2 Signals ![]() Wire: I2c_scanner DS1307: ReadTest. SetTime Behind the curtain... Wire-Level RTC Exercises 1. How I2C Communication Works |
|||
![]() |
||||
Communication Protocols (Serial, SPI, I2C, RF, IR, BT) ![]() Breadboard an I2C Bus with the DS1307RTC I2C I2C Basics, I2 Signals |
||||
CLASS | REFERENCE | HARDWARE | SOFTWARE/DESIGN | SUPPLEMENTAL |
Communication Protocols (Serial, SPI, I2C, RF, IR, BT) AVR Foundations Workbook: pp. 82-83 ![]() SPI* Bus 1D Scrolling on 4 MBV3s... ![]() ![]() *similar to shiftOut but MUCH faster! |
||||
Communication Protocols (Serial, SPI, I2C, RF, IR, BT) ![]() ![]() Download ACES' Zip file: ![]() Serial Communicaton (UART) Part 2A. CLIENT-SERVER Part 2B. PEER-PEER ![]() ![]() |
||||
![]() |
||||
CLASS | REFERENCE | HARDWARE | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() ![]() |
LM7805 5V Regulation see AVR Foundations Workbook p. 34 Project 2.3b Perma-Proto ATmega328P Review of Supplemental Parts and Distribution ![]() |
![]() ![]() |
![]() 2.20a, 2.3a ![]() | |
![]() ![]() |
Project 2.3a Breadboard ATmega328P ![]() |
![]() 2.20a, 2.3a | ||
UNIT 4. Embedded Systems (Standalone MCUs) | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() |
||||
35 Dec 20 |
![]() An ACCURATE MCU Time Base 4060 Ripple Counter 4-bit (÷16,384) Ripple Counter with 3 Oscillator Options 2019/2020 Challenge #2 4069 Pierce Oscillator ![]() ![]() Future EE ISP? LCD Direct Drive ![]() |
|||
![]() |
Crystal Tuning Fork![]() |
Pierce
Oscillator/Counter![]() |
5V Voltage Regulation![]() |
|
34 Dec 16 |
RSGC ACES' Standalone AVRs Embedded Systems ATmega328P, ATtiny84, ATtiny85 Breadboard MCU Considerations 1. Voltage Regulation with the LM7805 (p. 34) 2. Filtering for Stability 3. Crystal Oscillation 4. Reset (Active Low) Prep 5. In-System Programming (ACES' BoB) |
|||
UNIT 3. Shift Registers, LED Displays, and POV. Built-In Toolchain Libraries (EEPROM, String, etc.) |
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
ASCII Font for 8×8 LED Matrix
![]() EEPROM: Writing To and Reading From (Source Code: EEPROM.h) ![]() Similar Scanning on a... 4-digit 7-Segment Display |
||||
32 Dec 12 |
![]() |
|||
31 Dec 8 |
![]() ![]() ![]() Introducing... 2D Arrays TimerOne Interrupt ![]() EEPROM: Writing To and Reading From (Source Code: EEPROM.h) |
|||
30 Dec 6 |
Short ISP Presentations WA, AL Blank 8x8 Matrix Image Persistence of Vision (PoV) Row Scanning ![]() |
|||
Must Know! |
![]() |
![]() ![]() Mechanical Switches as Digital Inputs ![]() Boeing's Big Mistake? What happens in hardware, stays in hardware :) Wire an RC Debounce circuit! |
We need to smooth out the state transition... ![]() |
Button or Switch contacts can lead to false readings...:( ![]() |
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
29 Dec 2 |
Presentations JS, CT, ARC, JMi, WA, BW, JC, AL, SL Confirmed Absences GD |
|||
28 Nov 30 |
||||
27 Nov 28 |
Presentations GD, LM, RS, VJ, AS Confirmed Absences BB |
|||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Why might this be the PERFECT period for our first look at Interrupts ? Efficiency & Optimization Challenge1 Revisited External Interrupts ![]() RSGC ACES: ![]() |
Down Memory Lane: ![]() ![]() Adafruit's Tutorial on External Interrupts SUPERB Tutorial: Nick Gammon on Writing Interrupts |
|||
25 Nov 22 |
||||
FRIDAY NOVEMBER 18. No Class. Parent-Teacher Interviews | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
In-Class Challenge 1 (if you've been keeping up and applying yourself over the last few weeks you'll do fine) ← Gecko II |
||||
OYO |
Exploring/Exploiting your MBV3 Dimming, Timed Counting, VU Metering |
|||
MID-TERM BREAK (FRIDAY NOVEMBER 11 and MONDAY NOVEMBER 14) | ||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
OYO |
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
20/21 Nov 3/7 |
(Volatile) SRAM ARRAYS: Day 2/3 Sensor Monitoring: History Lists (Moving Averages) Introduction to Arrays (cont'd) ![]() Sensor Monitor & Plotting |
|||
(Volatile) SRAM ARRAYS: Day 1 LookUp Tables (LUTs) Data Modelling Pt. 2 Introduction to Arrays ![]() Inspirational Examples ![]() ![]() |
Distribution of your Morland Bargraph (MBv3) Device Kit MR. D. Supplies: PCB, 330 Ω SIP9 BUSSED Resistor Network YOU Supply: 10-LED Bargraph 74HC595 Shift Register DIP16 IC Socket 6 pos. Rt. Ang. Male Header |
|||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
If possible... Have your Shift Register prototype working... NCC Exercises on your SR Prototype 12. Complement 16. Serial input ![]() |
![]() ![]() Shift Registers WA, BB, JC, LD, GD, DF*, VJ, SL, JMac, LMc**, JMi, ARC, RS, JS, AS*, CT, BW |
|||
Resistor Networks
Dual Shift Register/Bargraph Prototyping Session Emphasis: Superior Wiring Strategy à la Eater... ![]() |
||||
Simply Good Stuff |
||||
Within the perpetual theme of... Doing MORE with Less: Extending the MCU's (Output) pins Introducing the 74HC595 Shift Register ![]() Interpreting Pinouts: 74HC595 ~ SN74HC595 - TPIC6C595 |
||||
![]() ![]() |
||||
OYO |
First BRIEF look at: Serial Communication (UART): AVR ISP: Serial Programming of your Arduino The Serial Monitor and Serial Plotter Tools |
|||
UNIT 2. Software Fundamentals: Nano Coding Companion (NCC)
|
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
15 Oct 20 |
![]() |
|||
OYO |
![]() |
![]() |
||
14 Oct 18 |
ADC Analog to Digital Conversion Mr. D's Recommended Video: ![]() |
4 'Basic' Modes of Control Flow: 1. Sequential (default) 2. Iteration (loop) 3. Decision (branch) 4. Modular (functions) (aka procedures, methods, subroutines) |
||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
Review 'em!![]() |
||||
Prototyping Options: ![]() ![]() ![]() ![]() |
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
11 Oct 7 |
![]() |
Asynchronous Work Period
***Cycle 3/Day 1 Period Rotation*** 1. ICS2O-1, 2.ICS4U, 3. ICS3U, 4. ICS2O-2 GREAT Code: Towards Better Code |
![]() |
|
10 Oct 5 |
THREE Conditional Decision Structures: ![]() ![]() ![]() |
Appendix E. C Operators and Precedence (p. 140) ![]() 7 a. uint16_t 7 b. BinaryCounting 8. AnalogInDigitalOut |
![]() |
|
![]() |
![]() |
|||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() |
![]() ![]() pp. 3, 6, 8 |
|||
![]() ![]() |
Base Conversions: Binary⇔Quaternary⇔Octal⇔Hexadecimal ![]() ![]() ![]() |
![]() |
||
![]() |
![]() |
|||
5 Sep 20 |
BBC: Adaptability The #1 Soft Skill ? ![]() |
Feedback: The 555 Time Machine Review: Formatting SI Units Confirm before Distributing: Nonda USB-C to USB 3.0 Adapter UNO/Nano Basics: ATmega328P Breakouts, Blink, Bootloaders, Breadboards |
![]() Behind the curtain... AVR-libc 2.1.0 Standard Integer Types Writing GREAT Code: Towards Better Code |
![]() |
UNIT 1. The 555 Time Machine
|
||||
CLASS | REFERENCE | HARDWARE CONTENT & CONCEPTS | SOFTWARE/DESIGN | SUPPLEMENTAL |
![]() |
2.1
![]() WA, BB*, JC*, LD, GD*, DF*, VJ*, SL, JMac, LMc*,JMi, ARC, RS, JS*, AS**, CT*, BW |
|||
3 Sep 14 |
BBC: Curiosity The Driver of Success? ![]() |
![]() |
||
2 Sep 12 |
Review of ![]() ![]() ![]() (Dual) OpAmp |
![]() Op Amp as Comparator (Open-Loop Design) ![]() (At least the first 7 min; ideally more) ( Check out his T-shirt! :) ACES' Frame Player: Op Amps Top 10 Op Amp Circuits |
2.1
![]() 556 (DUAL!) Timer IC: ![]() |
|
1b Sep 8 |
Distribution of...![]() ![]() ![]() Falstad Simulations: 555 Square Wave 555 with Internals |
![]() (Use with your SPAP Cable) Software Download Recall the 4017... ![]() Now, the 555... ![]() |
||
1a Sep 8 |
![]() ![]() |
![]() ![]() |
![]() ![]() |