Manoj Thakur - Arduino Projects Vol-I - With Proteus Simulation Files. Don't Just Read It, Try It
Manoj Thakur - Arduino Projects Vol-I - With Proteus Simulation Files. Don't Just Read It, Try It
com
Preface
I completed Master Degree in Electronics year 2008, I worked 5 years in
MIT as Assistant Professor in Electronics Department and found that many students
are struggling for knowing basic things and they are many times get bombarded with
lot of information that makes them confuse, so I decided to write a book that focus
more on practical approach and keep it like read less and experiment more. My first
e-book Measurement Made Simple with Arduino is the result of my experiences that
got great success. Many found that its basis for all measurement needs.
This book idea is to give concept behind making use of measurement and
control knowledge to apply in day to day practical application. Here we have
provided all the necessary data to make Arduino projects with keeping in mind read
less do more. The best thing about this book is its not just read or make, you can
actually simulate before you make it. Most of the projects are provided with
Proteus simulation files that are available on my website circuits4you.com.
The book layout is kept very simple like experiment notes
1. Discuss the idea of project
2. Sensor discussion
3. Circuit Design with simulation file link
4. Programming with hex file link
5. Conclusions
PCB Layout and other resources are given in last chapter. Do not forget to
see it.
This book is intended to focus on making various day to day life problem
solving projects using Arduino. It is kept short and specific to the title of the book.
We are using only Arduino Uno for the examples other boards can be used with same
code in most cases. This is first book of Arduino Project series.
Contents
1. GETTING STARTED WITH ARDUINO
1.1 ARDUINO INTRODUCTION
1.2 ARDUINO IDE BASICS
1.3 ARDUINO PROGRAMMING
1.4 ARDUINO PIN-OUTS
2. ARDUINO BASED DIGITAL CODE LOCK
2.1 INTRODUCTION
2.2 DIGITAL CODE LOCK CIRCUIT
2.3 DIGITAL CODE LOCK ARDUINO CODE
3. ARDUINO TEMPERATURE CONTROLLER
3.1 INTRODUCTION
3.2 TEMPERATURE CONTROLLER CIRCUIT
3.3 TEMPERATURE CONTROLLER ARDUINO CODE
4. ARDUINO OBJECT COUNTER
4.1 INTRODUCTION
4.2 OBJECT COUNTER CIRCUIT
4.3 OBJECT COUNTER ARDUINO CODE
5. ARDUINO DC DIGITAL VOLTMETER
5.1 INTRODUCTION
5.2 DIGITAL VOLTMETER CIRCUIT
5.3 DIGITAL VOLTMETER ARDUINO CODE
6. ARDUINO WATER LEVEL CONTROLLER
6.1 INTRODUCTION
6.2 WATER LEVEL CONTROLLER CIRCUIT
6.3 WATER LEVEL CONTROLLER ARDUINO CODE
7. AUTOMATIC LIGHT CONTROLLER
7.1 INTRODUCTION
7.2 AUTOMATIC LIGHT CONTROLLER CIRCUIT
7.3 AUTOMATIC LIGHT CONTROLLER ARDUINO CODE
8. SOLAR POWER MONITOR
8.1 INTRODUCTION
8.2 SOLAR POWER MONITOR CIRCUIT
8.3 SOLAR POWER MONITOR CODE
9. ULTRASONIC DISTANCE METER
9.1 INTRODUCTION
9.2 ULTRASONIC DISTANCE METER CIRCUIT
9.3 ULTRASONIC DISTANCE METER ARDUINO CODE
10. DIGITAL TIMER
10.1 INTRODUCTION
10.2 DIGITAL TIMER CIRCUIT
10.3 DIGITAL TIMER ARDUINO CODE
11. AUTOMATIC IRRIGATION SYSTEM
11. 1 INTRODUCTION
11.2 AUTOMATIC IRRIGATION SYSTEM CIRCUIT
11.3 AUTOMATIC IRRIGATION SYSTEM ARDUINO CODE
12. MOOD LAMP
12.1 INTRODUCTION
12.2 MOOD LAMP CIRCUIT
12.3 MOOD LAMP ARDUINO CODE
13. BLUETOOTH BASED HOME AUTOMATION
13. 1 INTRODUCTION
13.2 BLUETOOTH BASED HOME AUTOMATION CIRCUIT
13.3 BLUETOOTH BASED HOME AUTOMATION ARDUINO CODE
67
15.1 SIMULATION AND HEX FILES
67
Disclaimer
All do-it-yourself activities involve risk, and your safety is your own
responsibility, including proper use of equipments and safety gear, and determining
whether you have adequate skill and experience, Some of the resources used for these
projects are dangerous unless used properly and with adequate precautions, including
safety gear. Some illustrative photos do not depict safety precautions or equipment, in
order to show the project steps more clearly. The projects are not intended for use by
children.
Use of the instructions and suggestions is at your own risk. Circuits4you.com
and Author of this book (Manoj R. Thakur) disclaims all responsibility for any
damage, injury, or expense. It is your responsibility to make sure that your activities
comply with all applicable laws.
7, Vista, or XP:
Plug in your board and wait for Windows to begin its driver installation process. After
a few moments, the process will fail, despite its best efforts, Driver files are located in
Folder Arduino\Drivers select appropriate file and install the drivers.
After successful driver installation you will find new com port. You can check correct
com port number from device manager.
successful, the message "Done uploading." will appear in the status bar.
Arduino Uno
2.1 Introduction
Digital code locks are most common on security systems. An electronic lock or digital
lock is a device which has an electronic control assembly attached to it. They are
provided with an access control system. This system allows the user to unlock the
device with a password. The password is entered by making use of a keypad. The
user can also set his password to ensure better protection.
In this project major components include a keypad, LCD and the controller Arduino.
This article describes the making of an electronic code lock using arduino.
Components Required
1. Arduino Uno
2. 16x2 LCD Display
3. 4x4 keypad
4. Relay
5. 1K Resistors Qty. 3
6. BC548
7. LEDs
Conclusion
This code demonstrates how to construct digital code lock and its application
using arduino.
We have used almost all the IO lines of arduino, now you know that analog lines have
digital numbers from 14 to 19.
3.1 Introduction
Digital Temperature Controller using arduino, here we are using arduino as main
controller, this temperature controller controls the temperature of any heating device
with given set points. It displays state of the heating element either on or off and
current temperature on LCD.
Components Required
1. Arduino Uno
2. 16x2 LCD Display
3. Keys
4. Relay
5. 1K, 230 Ohm Resistors
6. BC548
7. LEDs
8. LM35 Temperature Sensor
Conclusion
This code demonstrates how to construct digital temperature controller using
arduino.
We have used combination of LCD and Temperature sensor LM35 to make simple
temperature controller using Arduino.
4.1 Introduction
Object counting is required in many applications. Industrial production counters, part
counters and many more. This project is constructed using Arduino Uno, 7-Segment
Display, 74HC595 shift register. We are using two switches to show the up and down
count.
Components Required
1. Arduino Uno
2. 4 digit 7-segment Display Common Cathode.
3. Keys
4. 1K Resistors
5. 75HC595
//===================================================================
//
SCAN DISPLAY FUNCTION
//===================================================================
void Scanner ()
{
switch ( cc ) //Depending on which digit is selcted give output
{
case 1:
digitalWrite ( SEG3 , HIGH );
DisplayDigit ( SegData [ Value [0]]);
digitalWrite ( SEG0 , LOW );
break;
case 2:
digitalWrite ( SEG0 , HIGH );
DisplayDigit ( SegData [ Value [1]]);
digitalWrite ( SEG1 , LOW );
break;
case 3:
digitalWrite ( SEG1 , HIGH );
DisplayDigit ( SegData [ Value [2]]);
digitalWrite ( SEG2 , LOW );
break;
case 4:
digitalWrite ( SEG2 , HIGH );
DisplayDigit ( SegData [ Value [3]]);
digitalWrite ( SEG3 , LOW );
break;
}
}
//===================================================================
Conclusion
This code demonstrates how to construct digital object counter using arduino.
You can try with different sensor such as IR proximity to make counting of object
passing in front of it. Here we used shift register to reduce IO requirement. You can
try 74LS48 7-segment decoder also. Shift register gives benefit of control of each
segment. You can display some alphanumeric characters and negative sign.
5.1 Introduction
A voltmeter is an instrument used for measuring electrical potential difference
between two points in an electric circuit. Analog voltmeters move a pointer across a
scale in proportion to the voltage of the circuit; digital voltmeters give a numerical
display of voltage by use of an analog to digital converter. We are using internal ADC
of Arduino to make Digital Voltmeter capable to display 0 to 5V. You can increase its
input voltage capacity by using voltage divider circuit.
Components Required
1. Arduino Uno
2. 4 digit 7-segment Display Common Cathode.
3. Variable Resistor.
4. 1K Resistors
5. 75HC595
cc =0;
Timer1 . initialize (10000); // set a timer of length 100000 microseconds (or 0.1 sec - or 10Hz
=> the led will blink 5 times, 5 cycles of on-and-off, per second)
Timer1 . attachInterrupt ( timerIsr ); // attach the service routine here
}
//=============================================================
//
Loop
//=============================================================
void loop () {
char Volt [4];
int Voltage = analogRead ( A0 );
//To get fixed point decimal point we multiply it by 100
Voltage = (500/1024.0) * Voltage ; //Scaling of 0 to 5V i.e. 0 to 1023 to 0 to 10 (in 10 steps)
//Display Voltage on Segments
sprintf ( Volt ,"%04d", Voltage );
Serial . println ( Volt );
Value [0]= Volt [0] & 0x0F;
Value [1]= Volt [1] & 0x0F;
Value [2]= Volt [2] & 0x0F;
Value [3]= Volt [3] & 0x0F;
delay (200);
}
//=============================================================
//
Generates Bargraph
//=============================================================
void DisplayDigit (char d )
{
int i ;
for( i =0; i <8; i ++) //Shift bit by bit data in shift register
{
if(( d & 0x80)==0x80)
{
digitalWrite ( Data , HIGH );
}
else
{
digitalWrite ( Data , LOW );
}
d = d <<1;
Conclusion
This code demonstrates how to construct digital voltmeter using arduino.
You can try with different sensor and measurement with this code for more on AC,
DC voltage, current measurement you can refer Measurement Made Simple with
Arduino e-Book available on circuits4you.com and Amazon.
6.1 Introduction
Water Level controllers do not need operator for performing start and stop operations
of water pump. This automatic water level controller switches ON the motor when the
water level in the tank becomes low (desired prefixed lower limit). It switches OFF
the motor once the tank becomes full.
Components Required
1. Arduino Uno
2. LCD 16x2.
3. Float Sensor.
4. 1K,220E,10K Resistors
5. 12V Relay
6. BC548 Transistor
7. Switches.
");
}
//=================================================================
//
LOOP
//=================================================================
void loop (){
lcd . setCursor (0,0);
lcd . print ("Water Level:"); //Do not display entered keys
if( analogRead ( A4 )>512) //Check High Level
{
lcd . print ("FULL ");
digitalWrite ( LED_GREEN , LOW ); //Green LED On
Pump =0; //Pump off
}
if( analogRead ( A5 )<400) //Check Low Level
{
lcd . print ("LOW ");
digitalWrite ( LED_GREEN , HIGH ); //Tank Level Low turn off Green LED
}
if( analogRead ( A3 ) < 400) //Lower Tank Empty
{
Pump =0;
lcd . setCursor (0,1);
lcd . print ("Lower Tank Empty ");
delay (1000);
}
else
{
if( analogRead ( A5 )<400) //Upper tank water level low turn on pump
{
Pump =1;
}
}
if( Pump ==1)
{
digitalWrite ( LED_RED , LOW );
digitalWrite ( RELAY , HIGH );
lcd . setCursor (0,1);
");
}
else
{
digitalWrite ( LED_RED , HIGH );
digitalWrite ( RELAY , LOW );
lcd . setCursor (0,1);
lcd . print ("Pump : OFF ");
delay (1000);
}
Conclusion
Test circuit with water and observe LED and Relay on/off with simulating test
conditions.
For continuous precise water level measurement you can refer Measurement Made
Simple with Arduino e-Book available on circuits4you.com and Amazon.
7.1 Introduction
Automatic light controller offers energy saving and convenience in the areas with a
photo sensor (LDR). This senses the ambient light conditions in the surrounding area
and switches ON-OFF the lighting load. The darkness level in the surrounding is
settable. It is in-built with an additional PIR Sensor which TURNS ON Light in the
presence of human and switches OFF after 10 seconds if no human detected for
energy saving operation. Thus it provides artificial light only when it is needed. This
reduces the large amount of energy wastage and helps in making the most energy
efficient lightings.
Components Required
1. Arduino Uno
2. PIR Sensor.
3. LDR Sensor.
4. 1K, 10K Resistors
5. 12V Relay
6. BC548 Transistor
7. Switches.
}
//=================================================================
//
LOOP
//=================================================================
void loop (){
//Turn on Lights if Motion is detected and Light intensity is low
if( digitalRead ( PIR )== HIGH )
{
counter =1000; //Set 10 Seconds time out counter
if( counter >15) //Motion detected for 1.5 Seconds
{
Conclusion
Circuit is build with very few components and it saves lot of energy. Test circuit.
8.1 Introduction
Solar Power Monitor is circuit to monitor current power generation of solar power. It
uses ACS712 Current sensor, Voltage sensor (use voltage divider), Temperature sensor
LM35. The circuit will display instantaneous current, voltage and power on LCD.
Maximum current we can measure here is 20Amps with 12v solar system.
Components Required
1. Arduino Uno
2. ACS712-20A
3. 16x2 LCD
4. 1K, 9K Resistors
5. LM35 Temperature sensor
Conclusion
Here we have learned how to measure voltage, current and power using arduino. You
can use ACS712 current sensor module.
9.1 Introduction
This application is based upon the reflection of sound waves. Sound waves are
defined as longitudinal pressure waves in the medium in which they are travelling.
Subjects whose dimensions are larger than the wavelength of the impinging sound
waves reflect them; the reflected waves are called the echo. If the speed of sound in
the medium is known and the time taken for the sound waves to travel the distance
from the source to the subject and back to the source is measured, the distance from
the source to the subject can be computed accurately. This is the measurement
principle of this application.
Components Required
1. Arduino Uno
2. HCSR04 Ultrasonic Distance Sensor
3. 16x2 LCD
4. 1K Resistors
Conclusion
Ultrasonic Distance meter will show the distance on LCD as well as on serial terminal.
You can try this project with 7-Segment display also.
10.1 Introduction
Need a few minutes? Pick up the Mini Digital Timer. It's the perfect size for use in the
kitchen or around the house, with an easy-to-read display. Use for countdown timer
and enjoy an elapsed time graphic plus an alarm.
Components Required
1. Arduino Uno
2. Buzzer
3. 4-Digit 7-Segnement Display Common Cathode
4. 1K Resistors
5. BC548 Transistor
6. 74HC595
7. Switches
void Scanner ()
{
switch ( cc ) //Depending on which digit is selcted give output
{
case 1:
digitalWrite ( SEG3 , HIGH );
DisplayDigit ( SegData [ Value [0]]);
digitalWrite ( SEG0 , LOW );
break;
case 2:
digitalWrite ( SEG0 , HIGH );
DisplayDigit ( SegData [ Value [1]] | 0x80); //Decimal Point
digitalWrite ( SEG1 , LOW );
break;
case 3:
digitalWrite ( SEG1 , HIGH );
DisplayDigit ( SegData [ Value [2]]);
digitalWrite ( SEG2 , LOW );
break;
case 4:
digitalWrite ( SEG2 , HIGH );
DisplayDigit ( SegData [ Value [3]]);
digitalWrite ( SEG3 , LOW );
break;
}
}
//===================================================================
Conclusion
This timer can be used in many applications, you can add start and stop button similar
to commercial timers.
11. 1 Introduction
Automatic Irrigation system monitors the soil moisture and depending on set points
turns on/off the pump which is connected to the relay. This way you can keep soil
moisture to a set point.
This system automatically waters the plants when we are on vacation. As we are
setting the soil moisture level, we need not to worry about too much of watering and
the plants end up dying anyway.
Components Required
1. Arduino Uno
2. Soil moisture sensor
3. 16x2 LCD
4. 1K, 220E Resistors
5. 12V Relay
6. BC548 Transistor
7. Switches
}
else
{
digitalWrite ( RELAY , HIGH ); //Turn on water pump
digitalWrite ( LED_GREEN , HIGH );
digitalWrite ( LED_RED , LOW ); //Turn on RED LED
}
delay (100); //Update at every 100mSeconds
}
//=================================================================
Conclusion
This system can be applied to garden using multiple soil moisture sensors. This code
is similar to temperature controller circuit.
12.1 Introduction
Philips offers LivingColor full color lamps, Mood lamp is similar to the Living Color
lamp uses buttons to set the color, from this project we get clear idea to control RGB
LED Strip to set desired color.
Components Required
1. Arduino Uno
2. RGB LED Strip
4. ULN2003
5. Switch
//=========================================================================
//
RGB LED Color Control
//
circuits4you.com
//=========================================================================
// constants won't change. They're used here to
// set pin numbers:
const int buttonPin = 7; // the number of the pushbutton pin
const int BLUEledPin = 11;
// LED pin
const int REDledPin = 10;
// LED pin
const int GREENledPin = 9;
// LED pin
}
//=========================================================================
//
LOOP
//=========================================================================
void loop (){
// read the state of the pushbutton value:
buttonState = digitalRead ( buttonPin );
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if ( buttonState == LOW ) {
delay (300);
color ++;
if( color >10)
{ color =0;}
}
}
//=========================================================================
//
Write Color Value
//=========================================================================
void SetColor (char R ,char G ,char B )
{
analogWrite ( REDledPin , R );
analogWrite ( GREENledPin , G );
analogWrite ( BLUEledPin , B );
}
Conclusion
Simple PWM generation of Arduino can be used for controlling colors of RGB LED
strip. You can try this project with combination of Bluetooth module.
13. 1 Introduction
Now days everyone talks about smart home and smart phones. Lets see how we can
convert simple electrical switch board into smart android app controlled. Here we are
using arduino and Bluetooth module to control relays. Android app acts as wireless
serial link between arduino an android app.
You can download android app BlueHome.apk from google drive link
https://drive.google.com/file/d/0ByhR7XNrC0R0MXEtYmRld1lySkU/view?
usp=sharing
Components Required
1. Arduino Uno
2. Bluetooth Module HC-06 (Note: Android App works only with HC06)
3. 4-Channel Relay Board
4. Connecting Wires
void setup () {
Serial . begin (9600);
pinMode (13, OUTPUT );
pinMode ( Relay1 , OUTPUT ); //Relay Pins in Output mode
pinMode ( Relay2 , OUTPUT );
pinMode ( Relay3 , OUTPUT );
pinMode ( Relay4 , OUTPUT );
}
void loop () {
if ( Serial . available () > 0) {
inByte = Serial . read ();
switch ( inByte ) {
case 0x03:
digitalWrite ( Relay1 , HIGH ); //Relay 1 on when inByte equals A
break;
case 0x04:
digitalWrite ( Relay1 , LOW ); //Relay 1 off when inByte equals B
break;
case 0x05:
digitalWrite ( Relay2 , HIGH ); //Relay 1 on when inByte equals A
break;
case 0x06:
digitalWrite ( Relay2 , LOW ); //Relay 1 off when inByte equals B
break;
case 0x07:
digitalWrite ( Relay3 , HIGH ); //Relay 1 on when inByte equals A
break;
case 0x08:
digitalWrite ( Relay3 , LOW ); //Relay 1 off when inByte equals B
break;
case 0x09:
digitalWrite ( Relay4 , HIGH ); //Relay 1 on when inByte equals A
break;
case 0x0A:
digitalWrite ( Relay4 , LOW ); //Relay 1 off when inByte equals B
break;
case 0x0B:
digitalWrite ( Relay1 , HIGH ); //All Relays ON when inByte equals 1
digitalWrite ( Relay2 , HIGH );
digitalWrite ( Relay3 , HIGH );
digitalWrite ( Relay4 , HIGH );
break;
case 0x0C:
digitalWrite ( Relay1 , LOW ); //All Relays OFF when inByte equals 2
digitalWrite ( Relay2 , LOW );
digitalWrite ( Relay3 , LOW );
digitalWrite ( Relay4 , LOW );
break;
}
}
}
Testing Procedure
1. Install Android app on your phone.
2. Allow third party download
3. Pair HC-06
4. Then start the software
5. Press Connect button on android app
6. Press on off buttons on android app and see the results.
14.1 Introduction
The normal function of traffic lights requires more than slight control and
coordination to ensure that traffic moves as smoothly and safely as possible and that
pedestrians are protected when they cross the roads. A variety of different control
systems are used to accomplish this, ranging from simple clockwork mechanisms to
sophisticated computerized control and coordination systems that self-adjust to
minimize delay to people using the road. Here we are using arduino to do the work.
Components Required
1. Arduino Uno
2. Red LEDs
3. Green LEDs
4. Yellow LEDs
5. 1K Resistors
Conclusion
Test the circuit in simulation and make it.
15.1 Introduction
A tachometer (revolution-counter, tach, rev-counter, RPM gauge) is an instrument
measuring the rotation speed of a shaft or disk, as in a motor or other machine. The
device usually displays the revolutions per minute (RPM) on a calibrated analogue
dial, but digital displays are increasingly common. Here we make use of arduino to
measure RPM.
Components Required
1. Arduino Uno
2. ACS712-20A
3. 16x2 LCD
4. 1K, 9K Resistors
5. LM35 Temperature sensor
cc =0;
Timer1 . initialize (10000); // set a timer of length 100000 microseconds (or 0.1 sec - or 10Hz
=> the led will blink 5 times, 5 cycles of on-and-off, per second)
Timer1 . attachInterrupt ( timerIsr ); // attach the service routine here
}
//=============================================================
//
Loop
//=============================================================
void loop () {
char rpm [4];
int RPM ;
unsigned long currentMillis = millis ();
if ( currentMillis - previousMillis >= MainPeriod )
{
previousMillis = currentMillis ;
// need to bufferize to avoid glitches
unsigned long _duration = duration ;
unsigned long _pulsecount = pulsecount ;
duration = 0; // clear counters
pulsecount = 0;
float Freq = 1e6 / float( _duration ); //Duration is in uSecond so it is 1e6 / T
Freq *= _pulsecount ; //calculate F
//Convert Freq to RPM
RPM = Freq * 60.0 * 1.0; //RPM = Freq * 60 * (Number of pulses per revolution)
//Display Freq on Segments
sprintf ( rpm ,"%04d", RPM ); //We get ASCII array in Volt
Value [0]= rpm [0] & 0x0F;
Value [1]= rpm [1] & 0x0F;
Value [2]= rpm [2] & 0x0F;
Value [3]= rpm [3] & 0x0F;
}
delay (200);
}
//=============================================================
//
Generates Bargraph
//=============================================================
void DisplayDigit (char d )
{
int i ;
for( i =0; i <8; i ++)
{
if(( d & 0x80)==0x80)
{
digitalWrite ( Data , HIGH );
}
else
{
digitalWrite ( Data , LOW );
}
d = d <<1;
//Give Clock pulse
digitalWrite ( Clock , LOW );
digitalWrite ( Clock , HIGH );
}
//Latch the data
digitalWrite ( Latch , LOW );
digitalWrite ( Latch , HIGH );
}
//===================================================================
//
TIMER 1 OVERFLOW INTTERRUPT FOR DISPALY
//===================================================================
void timerIsr ()
{
cc ++;
if( cc ==5) //We have only 4 digits
{ cc =1;}
Scanner ();
TCNT0 =0xCC;
}
//===================================================================
//
SCAN DISPLAY FUNCTION
//===================================================================
void Scanner ()
{
switch ( cc ) //Depending on which digit is selcted give output
{
case 1:
digitalWrite ( SEG3 , HIGH );
DisplayDigit ( SegData [ Value [0]]);
digitalWrite ( SEG0 , LOW );
break;
case 2:
digitalWrite ( SEG0 , HIGH );
DisplayDigit ( SegData [ Value [1]]);
digitalWrite ( SEG1 , LOW );
break;
case 3:
digitalWrite ( SEG1 , HIGH );
DisplayDigit ( SegData [ Value [2]]);
digitalWrite ( SEG2 , LOW );
break;
case 4:
digitalWrite ( SEG2 , HIGH );
DisplayDigit ( SegData [ Value [3]]);
digitalWrite ( SEG3 , LOW );
break;
}
}
//===================================================================
//
Interrupt Handler
//===================================================================
void myinthandler () // interrupt handler
{
unsigned long currentMicros = micros ();
duration += currentMicros - previousMicros ;
previousMicros = currentMicros ;
pulsecount ++;
}
Conclusion
This project can be modified to display frequency and speed.
16. References
Here you get all simulation file links and hex files.
Page
Number
1
1
1
2
4
6
7
9
11
11
14
16
19
19
21
23
27
30
32
34
37
38
43
46
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
48
50
54
56
59
61
63
66
69
73