Lect | Link | Hardware skills | Software skills |
1 |
Programmer-Interface |
To interface an ATtiny13 to an ISP programmer, to access the fuses |
- |
2 |
To switch on a LED |
To manipulate port pins, to enable port drivers, to drive a LED with
current, to switch a LED on and off |
Assembling source code, listings and hex files, program execution,
infinite loop |
3 |
To blink a LED |
To switch a led on and off |
Nested loops, counting loops, execution time of instructions, zero flag,
exact timing loops |
4 |
To blink a LED with the
timer |
Timer internals, prescaler, compare match ports, port pin
clear/set/toggling |
To configure the timer, start and stop of the timer, timer modes
normal and CTC, sleep mode |
5 |
To regulate a LED's intensity
with the timer |
To configure the timer as fast and phase correct pulse width generator |
Mathmatical expressions in assembler |
6 |
To blink/regulate a LED with a timer interrupt |
Interrupt mechanism and processing, reset- and interrupt-vector table, stack storage |
Interrupt programming, timer interrupt, interrupt service routines |
7 |
To start a red/green blink sequence with a key |
External interrupts, pull-up resistors, INT0 interrupt sequence |
Flow diagrams for sequence planning, handle INT0 and CTC interrupts |
8 |
To measure voltages
on an input pin and regulate intensity, changes of intensities and colors of a
LED |
AD converter, ADC ready interrupts, external pin interrupts PCINT |
Flow diagrams, key debouncing, OC0A and OC0B programming |
9 |
To generate tones, a gamut
tone generator and playing a melody |
OC0A output pin toggle, CTC frequency generation |
Tables, gamut table, multiplication 8 by 8 bit |
10 |
Driving a LCD with an ATtiny24 |
ATtiny24 hardware, port as a bus driver with write and read, controlling
and configuring an LCD
(see alternative mounting) |
Exact delay loops, init procedure for LCDs |
11 |
Reading and writing EEPROM content and
displaying 8 and 16 bit numbers in decimal on LCD |
EEPROM, read and write access
(see alternative mounting) |
Conversion of 8 and 16 bit binaries to decimal ASCII |
12 |
Receiving, analyzing and transmitting
infrared signals for remote control systems |
Controlling an IR receiver module
(see alternative mounting) |
Display binaries in hex format, signal time measuring, use of .if, .else and
.endif directives to assemble specific versions of a software |
13 |
Measuring and displaying of the frequency
on a digital and an analog input and measuring the inductivities of coils |
Counting PCINT signals on inputs, using the analog comparator
(see alternative mounting) |
24/32/40 bit decimal conversion, 24 bit multiplication, 40-by-40 bit division |
14 |
Measuring and displaying voltages,
currents and the temperature |
ADC measuring modes such as amplified differential voltages and the on-chip
temperature sensor
(see alternative mounting) |
Extensive multiplication and pseudo-floating point math |
- |
Drawing conclusions from the lectures |
- |
- |