8515 Getting started code V
0.12
by David VanHorn
The complete archive of all the modules can be downloaded from the File Archive section
Bugs :-)
This application consists of fifteen files. They should all be in the same directory, or
you will have to edit the .include directives
below to make them point to the right locations.
Main.asm
The main structure of the program
8515def.inc
Port and pin definitions, supplied by ATMEL
Equates.inc
Where constants get defined as words, to make life easier
Isr.asm
Interrupt Service
Routines
Init.asm
Machine initialization
Memory.asm Buffer
management
Serial.asm
Serial comms using the on-board uart
Servo.asm
Servo control code for eight standard R/C servos on
PORTC
Stepper.asm
Stepper motor control for one unipolar motor on port A0-A3
Random.asm A 19 bit
Pseudo Noise generator
Watchdog.asm Watchdog timer code
DS1602.asm Handler
for the Dallas 1602 dual seconds counter clock
DS1820.asm Handler
for the Dallas 1820 thermometer chip
Tables.asm
Example lookup table, plus code to get data out of
it.
The following files are not integrated into this application, they are just example code.
DS1806.asm
Handler for Dallas sextet pot
LCD4bit.asm
Handler for generic character based LCD's in 4 bit mode
VFD.asm
Handler for Futaba Vacuum
Fluorescent Displays
EEPROM.asm Handler for the
internal EEPROM, coded to save and recall pot values for DS1806 above, but you can
use it for anything.
Physical resources.
This application is designed for an AVR demo board, with 8.00 MHz crystal.
For bonus points, modify it to use a 4 MHz xtal, without changing the speed that anything
runs at. That's a good first project!
A0-3 Stepper motor output, 4 phase unipolar motor (Ping on A0 if
used)
A4-6 DS1602 dual RTC chip A4=/Reset A5=Data A6=Clock
A7 DS1820 Thermostat chip
B0-7 Demo board LED's
D0-7 Demo board switches
C0-7 R/C Servo outputs, connect to servos through a 1k
resistor.
T0 1mS opsys interrupt
T1 Servo width
UART Interrupt driven buffered comms, both directions
Wdog Internal watchdog timer is active.
All trademarks and logos are copyright of their respective owners.
(C) 1998-1999-2000 Stelios Koroneos