|
|
|
|||
MCU Predefines: io328p.h, iotnx4.h, and iotn85.h | |||||
---|---|---|---|---|---|
ACES EAGLE SMT RESOURCES: ACES_SMT.lbr (2020 01 10), ACES_SMT.dru, ACES_SMT.cam, JLCPCB.dru | |||||
ACES Alumni Blogs/Companies: Ethan M '18, Ethan P '18, Dan R '19, Mariano E. '15 | |||||
2020-2021 ICS4U: AVR Optimization | |||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
77 Jun 1 |
ISP Presentations (LRC, JS, PB) |
3.30 Long ISPs SA, PB, AG LR-C, JS, JV |
|||
76 May 31 |
ISP Presentations (AG, JV, SA) |
3.30.3 | |||
FINAL WEEKEND |
|||||
75 May 28 |
'84 ADC Prescalers
|
9. ADC Conversion Complete Interrupt (on the ADC Shield) ATtiny84 Datasheet: Chapter 10: Interrupts Chapter 18: Analog-to-Digital Converter ADCShieldASM Support Video ADCShield: Full code |
'84 ADC Auto Triggers |
||
74 May 27 |
8. ADC Register Configuration (on the ADC Shield) |
Timer Registers |
Timer Prescalers |
||
73 May 26 |
7. Timer 1 Overflow Interrupt (on the ADC Shield) ATtiny84 Predefines (AS7 Include File) prescalers84.inc |
ATtiny84 Interrupts |
|||
72 May 25 |
6. Double Dabble (Shift/Add 3) Algorithm (Binary to BCD Conversion) |
||||
Session 8 (8 Classes): Putting It All (three years) Together... AVR Assembly Language Programming ( Echoes of CHUMP :) |
|||||
CLASS | REFERENCES | CONCEPTS | PROJECTS | SUBMISSIONS | |
71 May 7 |
5. Shiftout: 7 Segment - Multi-Digit Display (PoV) (on the ADC Shield) |
3.5 Legacy Shields SA, PB, AG LR-C, JS, JV |
|||
70 May 6 |
4. Shiftout: 7 Segment - Single-Digit Display (on the ADC Shield) |
3.30.3 | |||
69 May 5 |
Asynchronous Wednesday Task Adapt Shiftout7SegmentSingle.S (Arduino IDE: AVR-as) to Shiftout7SegmentSingle.asm (Atmel Studio 7: AVR-asm2) post emails to the Forum if you have any concerns |
||||
69 May 4 |
4. Shiftout: 7 Segment - Single-Digit Display (on the ADC Shield) |
3.30.3 | |||
68 May 3 |
Bicolor Confirmation | 3.30.3 | |||
WEEKEND - Whew... |
|||||
67 Apr 30 |
3. BareMinimumDDBv6 Template Project Template Creation in 3 Steps |
3.5 | |||
66 Apr 29 |
Blink | ||||
65 Apr 28 |
Meet Guest (12 Noon...) Oliver Logush (ACES '18, Queen's '23) |
3.5 | |||
64 Apr 27 |
Endianness |
Exploring ATMEL Studio 7's Tools and Assets 2. Data Location, Addressing and Movement |
Stack Pointer |
||
63 Apr 26 |
AVR 8-bit Instruction Set Online Reference Summary vs Detailed AVR Instruction Lists |
Worth a watch ... Why I’m switching from the awesome Arduino IDE to AS7 AVR 8-bit Assembly on the DDBv6: First Project: 1. OnBoardLED (.S or asm) |
ATMEL Studio 7.0 User's Guide |
||
Session 8 Prep Apr 2-25 |
Required Hardware Assemblers... Arduino: avr-as AVR: AVRASM |
PRIOR to Session 8 (April 26)... Languages by Intensity TIOBE Languages by Popularity Install Install ATMEL Studio 7 (Microchip Studio) Watch... Intro to Arduino Inline Assembly |
|||
EASTER - APRIL BREAK |
|||||
LONG ISP (8 weeks) : Apr-May |
|||||
SESSION BREAK | |||||
Session 7 (10 Classes): ADC (Successive Approximation Algorithm with R2R DAC) |
|||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
62 Apr 1 |
'Behind the Curtain" look at the Tone Library In Class Task: Driving TDK's Passive PS1420P02 Piezo Buzzer |
ATtiny84 TC1: Prescalers |
ATtiny84 Timer0 Chapter 13 ATtiny84 Prescalers Chapter 15 |
||
61 Mar 31 |
DDP: Charlieplex Equalizer |
Introduction to the R/2R Resistor Network Great blog and exceptional supporting video: Basics of an R2R Ladder DAC Meet Guest (12:00 - 12:20) Josh Dolgin (ACES '20, Waterloo '25) ATtiny84 Interrupt Vector #12: Timer0 (Normal Mode 0) Overflow |
ATtiny84
TC1: Ports |
TC1 Predefines (Arduino IDE) TCPrescalers84.h TC1 Predefines (Atmel Studio) prescalers84.h |
|
60 Mar 30 |
ATtiny84 Timer1 Chapter 14 |
ISP Presentations SA, L R-C Important ADC Algorithm The inspiring video that brings clarity... Successive Approximation ACES' Frame Player: Timers84 ATtiny84 Interrupt Vector #9: Timer1 (Normal Mode 0) Overflow |
ATtiny84 TC1: Waveform Generation Modes |
ATtiny84: Interrupt Vectors |
|
59 Mar 29 |
Recall PWM as |
ISP Presentations PB, AG, JS, JV Introducton to Timers/Counters What are they good for? Counting, Scheduling, Event Capture, Frequency Generation, anything else? Could the WDT be used for PWM? How did we 'kind of' do that already? |
Timer Counter Block Diagrams Application Note: Setup and Use of AVR Timers |
3.20.3 Medium ISPs SA, PB, AG LR-C, JS, JV In what context did these Familiar Frequencies enter your ACES experience? How many can you identify? 50 Hz, 2 kHz, 2-200 kHz, 32.768 kHz, 38 kHz, 40 kHz, 433 MHz, 8 MHz, 16 MHz, 2.4 GHz |
|
Friday Holiday
|
|||||
58 Mar 25 |
Insanely great application of the Analog Comparator feature from Technoblogy |
ADC Week. Day 4. Putting the week's concepts together... 4-Bit Analog to Digital Simulation on the DDP (DDBv6+USv1) |
Thevenin and Superposition |
||
57 Mar 24 |
ADC Week. Day 3. Important Versatile Algorithm Successive Approximation The inspiring video that brought clarity... Successive Approximation |
||||
56 Mar 23 |
DAC Methods: R2R Ladder DAC Using R2R Resistor Ladder Arduino Basics: Digital to Analog Conversion |
ADC Week. Day 2. Ironically, it all starts with a DAC... Digital to Analog Conversion Seeds and Roots... Great blog and exceptional supporting video: Basics of an R2R Ladder DAC |
" Datasheet... 4610X-R2R-103LF |
Familiar Resistor Network Designs |
|
55 Mar 22 |
ATtiny84 Datasheet Chapter 17 |
ADC Week. Day 1. ATtiny84 Interrupt Vector #13: Analog Comparator Interrupt exploiting the DDP Universal Shield v1 Class Sketch: ACInterrupt.ino |
|||
Friday Holiday
|
|||||
54 Mar 18 |
Coompletion of the ADC Shield A Curious and Applicable Software and Hardware Algorithm |
||||
53 Mar 17 |
Continuation of the ADC Shield |
||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
52 Feb 26 |
ISP Previews SA, L R-C DDP: Legacy Shield |
3.20.2 | |||
51 Feb 25 |
ISP Previews PB, AG, JS, JV Universal Shield: USv1, USv2 |
3.20.2 | |||
50 Feb 24 |
Meet Guest: Ethan McAuliffe (ACES '18, McMaster '23) Continuation of the ADC Shield |
||||
49 Feb 23 |
ADC Shield |
Exploring your second DDBv6 Shield ADC Shield Part 1. WDTwithSleepADC |
DDBv6.13 | ||
48 Feb 22 |
Completion of your first DDBv6 Shield Intersection Shield |
DDBv6.12
DDBv6.13 |
|||
47 Feb 19 |
Exploring your first DDBv6 Shield Intersection Shield |
DDBv6.12 | |||
46 Feb 18 |
NASA's Perseverance... Mars Landing Today Finishing... Power Management Prototype with scheduling for ADC... |
DDBv6.11 | |||
45 Feb 17 |
Intersection Shield | Meet Guest: Ethan Peterson (ACES '18, Queen's '22) Continuing with ... Power Management Prototype |
DDBv6.11
|
Terminology
3.20.2 |
|
44 Feb 16 |
Watchdog Timer (WDT) Interrupt (§9.8, p.39) WDT support for: Power Management Power Down Sleep Mode |
Kevin Darrah's... Low Power Arduino! Deep Sleep Tutorial DDBv6.11 |
3.20.2 |
||
FEBRUARY 15: FAMILY DAY |
|||||
Session 5 (10 Classes): AVR Register-Level Programming of the ATtiny84 on the Dolgin Development Board (DDB) |
|||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
43 Jan 29 |
More with less ... Charlieplexing The RSGC ACES' CharlieStick |
DDBv6.10
Charlieplexing the 8x7 Matrix Charlieplex Matrix |
3.4 Pin Change Interrupt SA*, PB*, AG** LR-C, JS*, JV* |
||
41b Jan 28 |
Again, Technoblogy... ATtiny85 Function Generator ACES' Frame Player: Waveforms Sine, Triangle, Sawtooth, Square, Rectangle, Pulse, Chainsaw, Noise |
3.4 |
|||
41a Jan 28 |
Wolfram Demonstration... Gray vs Binary Code |
Rotary Encoders Terrific Blog: Technoblogy... Bounce-Free Rotary Encoder |
Another good blog... Rotary Encoders |
DDBv6.9 |
|
No Teaching By Order of Management :) (Optional ISP Q&A Session)
|
|||||
40 Jan 26 |
Adding DDBv6 library support for Register-Level ShiftOut Exploring DDBv6 support for The Morland Bargraph V3 |
DDBv6.8 | 3.4 | ||
39 Jan 25 |
Concept: Interrupt-Driven Coding Adding DDBv6 library support for Pin Change Interrupt(s) exploiting the RSGC ACES' Button Debouncer v2 with confirmation on the DDBv6's OnBoard LED |
DDBv6.7 |
|||
38b Jan 23 |
Adding DDBv6 library support for SoftwareSerial IO to the IDE's Serial Monitor and Plotter |
DDBv6.6 |
3.4 | ||
38a Jan 22 |
Register-Level Coding of Reset Sources |
DDBv6.5 |
3.4 | ||
37 Jan 21 |
Further development of the DDBv6 Software Library keywords.txt |
DDBv6.4 |
3.4 | ||
No Teaching By Order of Management :)
|
|||||
36 Jan 19 |
The OnBoard LED (PB2 - D8)
Reusable code... Establishment of your Arduino DDBv6 Software Library Arduino Library Specification keywords.txt Format |
DDBv6.3 |
|||
35 Jan 18 |
Dolgin Dev. Plat.
|
The Dolgin Development Platform (V6) |
AVR Optimization ... Big O Notation of Algorithms DDBv6.1 DDBv6.2 |
|
|
DECEMBER BREAK |
|||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
34 Dec 16 |
Project 3.3 Final Preparations ... Exercises: PlayByte, outShift() Project 3.3. Mid-Level Matrix |
'595 Timing: |
3.3 Keypad Matrix Echo SA, PB*, AG LR-C, JS, JV |
||
33 Dec 15 |
Mid-Level Coding Exercises ... on the ATtiny84 |
3.3 | |||
32 Dec14 |
Mid-Level Coding Exercises ... on the ATtiny84 |
3.3 | |||
31 Dec 11 |
ATmega328p Summary, Full |
Mid-Level Coding Exercises ... on the ATtiny84 |
|||
30 Dec 10 |
Review homework ... BitManipulation.ino Mid-Level Coding Exercises ... on the ATtiny84 |
||||
29 Dec 9 |
Further AVR Optimization... Mid-Level Programming C++ Operator Precedence (p. 140) BitManipulation.ino |
GPIO Ports Recall #include iom328p.h |
|||
28 Dec 8 |
Cohort B on campus, so ... Cohort A ISP Presentation (@home) |
Peer ISP Evaluation Form download and rename 6 copies to: YYmm.docx |
3.10.4 Short ISPs SA, PB, AG LR-C, JS, JV 3.10.3 |
||
27 Dec 7 |
Cohort A on campus, so ... Cohort B ISP Presentation (@home) |
||||
PARENT TEACHER INTERVIEWS - SESSION BREAK | |||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
26 Nov 19 |
Electronics' Club 74LS Logic ICs |
3.2. CHUMP II: SA, PB, AG LR-C, JS, JV 3.2.4 - 3.2.8 |
|||
25 Nov 18 |
Shirriff: 181 ALU Active High Operations |
3.2.4 - 3.2.8 | |||
24 Nov 17 |
CHUMP: Branch Control Logic Be sure to add a 2.2 KΩ Pullup on ALU's A=B pin (14) (Open Collector) CHUMP A=B Pin Explored CHUMP: Shift Left User Instruction |
||||
NOVEMBER BREAK |
|||||
SHORT ISP (8 weeks) : Sep-Oct |
|||||
23 Nov 12 |
CHUMP Build Sessions Initial Placement of ICs Supply Access (5V-red?, GND-black?) Color-coded Buses (Address?, Data?, Control?) |
||||
22 Nov 11 |
|||||
21 Nov 10 |
CHUMP RSGC's 1st Computer (Jan 7, 1980 @ $25K) Our PDP-11/03 Minicomputer (SN74LS181 as the ALU!) |
3.2.4 - 3.2.8 | |||
20 Nov 9 |
EEPROM Shield Burner Code *Additional Programs... Shield Custodians: SA, PB, AG, LRC |
CHUMP Control EEPROM Codes CHUMPControlCodesWorksheet.docx Feinberg's CHUMP Code Running |
Feinberg Code: |
||
SESSION BREAK | |||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
19 Oct 23 |
ISP Preview (Home Cohort)
CHUMP |
3.10.2 Short ISP Prevs: SA, PB, AG LR-C, JS, JV |
3.2. CHUMP I: SA, PB, AG* LR-C, JS, JV LR-C: Falstad Logic |
||
18 Oct 22 |
ISP Preview (Home Cohort)
CHUMP (ACES' EEPROM Enhancement) |
Feinberg Example: 82 10 21 62 A0 |
3.2.1, 3.2.2, and 3.2.3 | ||
17 Oct 21 |
Build/Guidance Session | CHUMP / ISP |
3.2.1, 3.2.2, and 3.2.3 | ||
16 Oct 20 |
Build/Guidance Session Swapping Variables Program Code Shield Burner Code |
CHUMP / ISP
|
Shield Burner's Flashing of Feinberg's Sample Code |
BB Burner's Flashing of Swapping Variables CHUMPanese Code |
|
15 Oct 19 |
Build/Guidance Session
Feinberg Example Code |
CHUMP / ISP |
3.2.1, 3.2.2, and 3.2.3
Program and Control EEPROMs (AT28C16) |
||
14 Oct 16 |
Build/Guidance Session | CHUMP / ISP Early Preview of the AT28C16 EEPROM and Paging |
|||
13 Oct 15 |
Build/Guidance Session | CHUMP / ISP K. Shirriff's Blog... Inside the vintage 74181 ALU chip: How it works and why it's so strange |
3.2.1, 3.2.2, and 3.2.3 | ||
12 Oct 14 Curr. Night 7:30 PM |
Build/Guidance Session
Curriculum Night |
CHUMP / ISP | 3.2.1, 3.2.2, and 3.2.3 CHUMP Loaner: Two RSGC ACES' EEPROM Burner Shields |
||
11 Oct 13 |
CHUMP: Clock (NE555) +TTL Logic: AND (74LS08), and OR (74LS32) + Program Counter (74LS161) (JV) with /CLR feature + External NAND (74LS00) (LOAD) |
CHUMP Supplements: (no-charge) 0.3" and 0.4" (100 each) red, yellow, green rectangular LEDs (32 each) |
|||
Session Break | |||||
CLASS | SUPPLEMENTARY | CONCEPTS | PROJECTS | SUBMISSIONS | |
10 Sep 25 |
Chumpanese: If..else Correction
SMT Assembly Service (PB Machine V3) |
Parts Library |
3.1. GB Machine: SA, PB, AG LR-C, JS, JV |
||
9 Sep 24 |
First (only?) look at the... TL866II EEPROM Programmer Curriculum Night @ 7 |
Service/Skills Request :)
JV to Solicit Feedback Chumpanese Example: if..then..else |
|||
8 Sep 23 |
Falstad Simulation: 555 with Internals Ethan McAuliffe |
First Look: Chumpanese Example: Swapping Memory Locations |
M. McCutcheon's Build |
R. Fletcher's Bots |
|
7 Sep 22 |
CHUMP: Clock B. Eater's terrific 4-part video series: Part 2: Monostable, Part 3: Bistable Part 4: Clock Logic |
555 Tutorial |
3.1 | ||
6 Sep 21 |
Check 'em out!... |
CHUMP: Clock For Discussion: Calendar Modifications and ISP Weightings B. Eater's terrific 4-part video series: Part 1: Astable |
|||
5 Sep 18 |
Alan Turing's Famous Paper: (paving the way for the modern computer) "On Computable Numbers With an Application to the Entscheidungsproblem" |
CHUMP Cheap Homebrew Understandable Minimal Processor The CHUMPANESE Language, Reflections |
CHUMP IC Assignments |
3.10.1 | |
4 Sep 17 |
A Simple and Affordable TTL Processor for the Classroom - D. Feinberg pp. 4-5 |
CHUMP Cheap Homebrew Understandable Minimal Processor Control Logic |
3.10.1 | ||
3 Sep 16 |
pp. 3-4 | CHUMP Cheap Homebrew Understandable Minimal Processor Instruction Set |
Reorder Details |
3.1 and 3.10.1 |
|
2 Sep 15 |
pp. 1-2 | CHUMP Cheap Homebrew Understandable Minimal Processor |
RSGC ACES' Common SMT Parts |
3.1 and 3.10.1 |
|
1 Sep 14 |
Short ISP Proposal Due Saturday@midnight Student Outline Mr. D's Timetable TA Day Assignments |
Short ISP Options, Discussion, and (High) Expectations Starters are a dime-a-dozen... |
20/21 ICS4U: SMT Focus on Thin... The MorlandBargraphV4 in action |
3.1 |
|
0 Sep 10 |
Short ISP Proposal Due Saturday@midnight Student Outline Mr. D's Timetable TA Day Assignments |
2020/2021
ACES' Program
Our ACES' Program: Contradictions ACES Hall of Fame: E. McAuliffe ('18) E. Peterson ('18) Mariano Elia ('15) Hackster.io, Argon Prototypes |