2018-2019 ICS3U: List of ISPs, Sawdust&Noise
F. Embedded Systems
MEDIUM (6 weeks) ISP Proposals: April - May
MARCH BREAK
E. Hardware and Software Black Boxes: Specialized ICs and Device Libraries
Christmas Break
SHORT (4 weeks) ISP Presentations: January - February
D. Design Engineering Project
C. Mechanical
CLASS REFERENCE CONTENT & CONCEPTS PROJECT SUPPLEMENTAL
29-35
Dec 4-18
Planting the Seed: How PCBs are Made
Six Design Sessions (3 ViaCAD/3 EAGLE)
Dec 4, 6, 10, 12, 14, 18
 
B. Basic Skills; Code, Data and Prototyping
CLASS REFERENCE CONTENT & CONCEPTS PROJECT SUPPLEMENTAL
25
Nov 22
  High-Level Bit functions
highByte(x) & lowByte(x) functions
PWM (Pulse Width Modulation)
vs
BAM (Bit Angle Modulation)


24
Nov 20
MatrixMadeEZ:
DB, RC, JD*, BD, FF*,
ZK*, JL, CM*, MM*, OM,
LM, JP, SP, EP**, AR,
NV**, LW*, FW*, NW**
Video Review of the best of
MatrixMadeEZ


Great CODE Design demands Great DATA Design:
Data Modeling I Exercise (continued)

23
Nov 14
RSGC ACES:
Matrix Postion

RSGC ACES:
Joystick Principle

Animation Demo:
CCW Rotation
EEPROM: Writing To and Reading From
EEPROM Library
(Source Code: EEPROM.h)

pp. 22-23...DATA Design:
array, struct
Great CODE Design demands Great DATA Design:
Data Modeling I Exercise

4


Code:
Writing Matrix Font to EEPROM

22
Nov 8

Our ACES program
can't make you great.

You have to do that yourself

Planting the Seed: Stepper Motors

(Your MatrixMadeEZ Device is soldered)
MatrixMadeEZ Data/Coding Design Steps
Sketch > Include Library > Manage Libraries...
Using the TimerOne Library
EEPROM: Writing To and Reading From


21
Nov 6

Project 4. MatrizMadeEZ
Two New Parts:
1. Power Logic 8-bit Shift Register: TPIC6C595
2. Small 8x8 Matrix: BL-M07C881UR-11
Adafruit Alternative: KWM-20882CUYB

F. Quick Preview: Embedded Systems (Breadboard Arduino)
CLASS REFERENCE CONTENT & CONCEPTS PROJECT SUPPLEMENTAL
20
Nov 2

p. 114: In-System Programming (ISP)
Shift Register - Bargraph Display

on a
Standalone (Breadboard) Arduino
p. 33: Voltage Regulation

A. Arduino Fundamentals
CLASS REFERENCE CONTENT & CONCEPTS PROJECT SUPPLEMENTAL
19
Oct 31
A.10.7: (The Mathematics of) Binary Trees

A.10.8.1: Binary Counter Bit Frequencies


RGBLED Command Language (Register-Level)
Arduino's Serial and String Classes
The switch..case Statement

18
Oct 29
Shift Register - Bargraph:
DB, RC, JD*, BD, FF,
ZK, JL*, CM, MM, OM,
LM, JP, SP*, EP, AR,
NV*, LW, FW, NW*
pp. 24-27

AVRFoundations: BinaryCounter.ino
C Compiler/Preprocessor Directive:
#define
A.10. Interesting Activities and Exercises

Writing High-Quality Code
Moore's Law, Data and Code Size
Iteration: Hardware and Software


M. Elia (ACES '15)


O. Logush (ACES '18)
17
Oct 25
3

Expanding Digital Output Capabilities:
(
details convered on pp. 20-21 in our Workbook)
ShiftOut (Serial to Parallel)
74HC595 Shift Register Datasheet

74HC595 vs SN74HC595
16
Oct 23

BitMath Tutorial (Evaluate these)
Bit Masking
bitRead(x,n), bitSet(x,n), bitClear(x,n)
File > Examples > Display > BarGraph
Bargraph Exercises
(aka. tying up a lot of pins!)
15
Oct 19

The bar none BEST way to become a great CS thinker...

Project Euler Project Euler

for loops and Arrays Adafruit's 12-LED

TriColor Bargraphs
Examples
Control Structures >
For Loop Iteration
14
Oct 17


Looking for 7-Segment
InSPiration?

Button/Switch Repatriation Day
Voltage Dividers:
LDRs and Thermistors


Pin Concept: Open Collector or Open Drain
VU Metering (LM3914 Block Diagram):

LM3914 Dot/Bargraph Display Driver IC
LM3914 Animated Tutorial

10-LED Bargraph


Bargraph
Animation Exercises

SIP Resistor Network
13
Oct 15
ASCII & Buttons:
DB, RC, JD, BD, FF,
ZK*, JL*,CM*, MM*, OM,
LM, JP, SP*, JP, EP, AR,
NV**
LW, FW, NW*

Language Reference:
min, max, abs, pow, sqrt
map & constrain

Review of ASCII & Buttons Feedback
Great Code is Modular
Our
mapf(value,fromLow,fromHigh,toLow,toHigh)
function

Writing a function
12
Oct 11

Successive Approximation

(aka Binary Decomposition)

Integer Division
ANALOG INPUT: analogRead()
Reading Analog Voltage
328p Datasheet:
Analog-to-Digital Converter (ADC) (Ch. 24)
2
B. Dreger's G10 ISP

aka Digital 14-19

Serial Plotter
11
Oct 9

ANALOG OUTPUT: analogWrite()
K. Shirriff's Blog: Secrets of Arduino PWM
Pulse Width Modulation (PWM)

Faux Fire Effect

10
Oct 4


as
DIGITAL INPUT: Button Press
<<<<< Review Fritzing Diagram to the Left
File > Examples> Basics >DigitalReadSerial File > Examples> Digital > DigitalReadPullup

randomSeed(int)
random(int)



9
Oct 2
File > Examples >
Communication >

ASCIITable
AVRFoundations: SerialIO.ino
Mathematics: Powers of 2
'Human' Interactivity with your Arduino:
The Serial Library, Serial Monitor
Reset
Serial.print() vs Serial.write();

UTF-8 To Extended ASCII

8
Sep 28
  Class Cancelled due to Sleep-In Day :(
2  
7
Sep 26
Preferred:
Standard Integer Data Types

Traffic Light Videos:
DB, RC, JD*, BD, FF, ZK, JL, CM*, MM, OM,
LM, JP, SP, JP, EP, AR, NV*, LW, FW, NW*
Thorough review of Feedback email

2
6
Sep 24
BlinkBicolor
AVRFoundations: Scope.ino

ER Considerations for Tonight's Submission
(Title page, Section Break>Divider page, Code Heading)
Three (New?) Concepts:
Scope, Negative Integers, Casting
Some Binary Arithmetic Considerations
1 2s Complement
5
Sep 19
Arduino
Language Reference
AVRFoundations: Datatypes.ino
Microchip's (ATMEL): ATmega328P μC (pp. 2-3)
(Datasheet Summary)
C: Data Modeling 1
(pp. 6-9):
Standard Integer Data Types
(Include FIles: stdint.h, limits.h)

FIRST Look at the Serial Monitor
Arduino sizeof() Utility function
4
Sep 17
ATmega328P
Register Summary

Coding: High-Level vs Mid-Level (Register Level)
Microchip's 8-bit AVR Microcontrollers
Summary of Features:
The ATmega328P Microcontroller
Register-Level Coding: Direct Port Access
Include file:
iom328p.h
3
Sep 13


Square Wave→Sine Wave
Legacies, DES Tools
It's thrilling to get the HARDWARE to work, but...
Writing GREAT Code
More on the Arduino Development Environment
Coding: High-Level vs Mid-Level (Register Level)
The BareMinimum Sketch
1
ER:
Navigation Pane
2
Sep 11
Arduino Development Environment
The Blink Sketch
Coding: High-Level vs Mid-Level (Register Level)
1
1b
Sep 7
AVRFoundations
pp. 0-5
Our ACES' Program: Contradictions
Distribute Toolkits and Workbooks
Starters are a dime-a-dozen...
Review Front Matter (Philosophy, Legacies)
and Organizaton of Workbook and Course
Arduino Development Tools, AVR Microcontrollers
1a
Sep 7
Student Outline
Mr. D'Arcy's Schedule
ICS3U ISPs
Sep 8: The Launch
REPUTATION and RESPECT
ACES Hall of Fame:
E. McAuliffe ('18), M. Elia ('15), J. Gettings ('10)
2018-2019 ACES Program

[ACES Culture]
For our second Field Trip of the year we have been invited to visit a factory that is developing solar panels. Since this device is an integral part of our Greenhouse Project this year, early familiarity with this technology will be advantageous.
What better way is there to start the year than with a walking field trip to acquire the electronic components that we will make good use of? You'll also be aware of its location for your own personal projects.
I have no formal training in electronics or electrical engineering - I'm just really interested in this field. The knowledge and skill I have has been largely acquired over the last few years from learning alongside many talented Georgians and I look forward to expanding my capabilities by working with you this year.
I ask six things of my ACES (for most other things I'm usually flexible):
1. SHORTCUTS. The world has enough corner-cutters. This is includes cheating, plagiarizing, or lying.
2. SHARED SPACE. Show respect for others that use the lab by putting your projects away and leaving your bench area tidy when you leave.
3. DES VISITORS. Show respect for adult visitors that enter the lab by immediately stopping what you are doing, standing and facing the individual(s).
4. NO EATING. Show respect for the lab by not eating in the DES. You may go into the hallway for a quick bite if you need to.
5. AVOID WASTE. Show respect for the lab's resources by not wasting or misusing them.
6. REPUTATION. Show respect for yourself by looking (and speaking) your best. It's the little things keep the doors of opportunity open.
Growing Success, p. 29
Responsibility, Organization, Independent Work, Collaboration, Initiative, Self-Reliant Growing Success. p.11.

It is worth noting, right from the start, that assessment is a human process, conducted by and with human beings, and subject inevitably to the frailties of human judgement.
However crisp and objective we might try to make it, and however neatly quantifiable may be our "results", assessment is closer to art than science.
It is, after all, an exercise in human communication.
Knowledge: Subject-specific content acquired in each course (knowledge), and the comprehension of its meaning and significance (understanding).
Thinking: The use of critical and creative thinking skills and/or processes, as follows:
Communication: The conveying of meaning through various forms, as follows:
Application: The use of knowledge and skills to make connections within and between various contexts.