Professional Documents
Culture Documents
by
by
Bachelor of Technology
in
ii
DECLARATION
We hereby declare that this submission is our own work and that, to the best of our
knowledge and belief, it contains no material previously published or written by another
person nor material which to a substantial extent has been accepted for the award of any
other degree or diploma of the university or other institute of higher learning except where
due acknowledgment has been made in the text.
Signature: Signature:
Date : Date :
Signature:
Date :
iii
CERTIFICATE
This is to certify that the Project Report entitled “Microcontroller Based Remote
Patient Monitoring System” which is submitted by Pallavi Baniya (1206831060),
Parth Shankar (1206832040) and Shreya Dhaka (1206831302), in partial
fulfilment of the requirements for the award of degree B. Tech in Department of
Electronics & Communication Engineering of Dr. A.P.J Abdul Kalam Technical
University, is record of the candidate own work carried out by him under my/our
supervision. The matter embodied in this thesis is original and has not been submitted
for the award of any other degree.
iv
ACKNOWLEDGMENT
It gives us a great sense of pleasure to present the report of the B.Tech Project
undertaken during B.Tech Final Year. We owe special debt of gratitude to Dr. D.K.
Sharma, Prof. & Head and Mr. Priyank Sharma, Assistant Professor from the
Department of Electronics & Communication Engineering, Meerut Institute of
Engineering & Technology, Meerut for their constant support and guidance
throughout the course of our work. Their sincerity, thoroughness and perseverance
have been a constant source of inspiration for us. It is their minimum efforts that our
endeavours have seen light of the day.
We also would like to take this opportunity to acknowledge the contribution of all
faculty members of the department for their kind assistance and cooperation during
the development of our project. Last but not the least, we acknowledge our friends for
their contribution in the completion of the project.
v
ABSTRACT
Proper monitoring of patients is very critical as even the slightest of mistake or delay
can lead to catastrophic results. Managing a number of patients and monitoring them
is a cumbersome task. For this a simple monitoring system that wirelessly informs the
caretakers of the criticality of the patient’s health is quite useful. Although a number
of sophisticated monitoring equipments may be available in the market , something
as simple and generic has its own advantages.
This project brings forward the idea of monitoring of patients on the basis of body
parameters like heartbeat and body temperature and informing the caretakers
wirelessly .The medicine reminder system involved in this project is quite helpful
when it comes to patients who forget to take their medicines or for caretakers to get
reminded of the medicines at the exact time.
vi
TABLE OF CONTENTS
DECLARATION .............................................................................................iii
CERTIFICATE.................................................................................................iv
ACKNOWLEDGEMENT.................................................................................v
ABSTRACT .....................................................................................................vi
LIST OF TABLES.............................................................................................ix
LIST OF FIGURES............................................................................................x
LIST OF SYMBOLS ........................................................................................xi
LIST OF ABBREVIATIONS ...................................................................…..xii
CHAPTER 1 (INTRODUCTION)……….........................................................1
1.1 Introduction............................................................................................1
CHAPTER 2 (TECHNICAL BACKGROUND)................................................2
2.1 Working Principle..................................................................................2
2.2 Project Model.........................................................................................3
2.3 Components...........................................................................................4
2.3.1 Sensors.....................................……………………………...4
2.3.1.1 Heartbeat Sensor.........................................................4
2.3.1.2 Temperature Sensor.....................................................5
2.3.2 Microcontrollers..………………………………………….....6
2.3.2.1 ATmega 16..................................................................6
2.3.2.2 BeyonDuino................................................................7
2.3.3 MyFi.............…………………………………………….......9
2.3.4 RF Module...................................…………………….........10
2.3.4.1 Transmitter and Receiver..........................................10
2.3.4.2 HT12E.......................................................................10
2.3.4.3 HT12D.......................................................................12
2.3.5 Voltage Regulator....................………………….................12
2.3.6 Liquid Crystal Display..……………………………………13
2.3.7 Buzzer...................…………………………………………15
2.3.8 Momentary Push Button Switch..........................................16
vii
CHAPTER 3 (PROJECT DEVELOPMENT)...............................................17
3.1 Interfacing..……………………………………………………….....17
3.1.1 Transmitter side......................................................................17
3.1.2 Receiver side..........................................................................18
3.2 Final PCB Design………………………………………………........19
3.3 System Cost……………………………………………………….... 20
3.4 Requirements………………………………………………………...21
3.4.1 Software Requirements………………………………........ 21
3.4.2 Hardware Requirements…………………………………....21
3.5 Advantages...........................................................................................21
3.6 Key Features.........................................................................................21
CHAPTER 5 (PROGRAM CODING)………………………………………. 22
5.1 Monitoring Side……………………………………………………....22
5.2 Medicine Reminder System (Arduino Sketch).....................................25
CHAPTER 5 (CONCLUSION, LIMITATIONS & SCOPE OF
IMPROVEMENT)……………………………………………………......28
5.1 Conclusion……………………………………………………….........28
5.2 Limitations……………………………………………………….........28
5.3 Scope of Improvement…………………………………………...........28
APPENDIX A ...................................................................................................29
APPENDIX B ...................................................................................................33
APPENDIX C ...................................................................................................37
APPENDIX D ...................................................................................................43
APPENDIX E....................................................................................................45
REFERENCES... ..............................................................................................47
viii
LIST OF TABLES
ix
LIST OF FIGURES
x
LIST OF SYMBOLS
1. V Volts
2. kΩ Kilo ohm
3. A Ampere
4. Ms Millisecond
5. Tx Transmitter
6. kB Kilo Bytes
7. Hz Hertz
8. MHz Mega Hertz
9. I Current
10. C Capacitance
11. Rx Receiver
xi
LIST OF ABBREVIATIONS
1. RF Radio Frequency
2. LED Light Emitting Diode
3. PCB Printed Circuit Board
4. LCD Liquid Crystal Display
5. RTC Real Time Clock
6. FTDI Future Technology Devices International
7. ADC Analog to Digital Convertor
8. IDE Integrated Development Environment
9. DIP Dual In Package
10. USART Universal Synchronous Asynchronous
Receiver Transmitter
11. SPI Serial Peripheral Interface
12. GND Ground
xii
CHAPTER 1
INTRODUCTION
Patient monitoring and management in critical care environments such as the ICU’s ,
SICU’s and ANCU’s involve estimating the status of the patient and reacting to
events that may be life threatening. It is impossible to keep a tab on every patient
throughout the day. New solutions are needed in this field to help the doctors and the
nursing staff to monitor the patients.
The project is basically a patient monitoring and reminder system. It consists
of two modules. One is which monitors the patient’s heartbeats and body temperature
and sends the information to the caretaker wirelessly through radio frequency
transmission.
A critical element is the medicine administration and monitoring as most of
the patients forget to take the appropriate prescribed medication at the required time.
There are occasions when patients remember to take medicines at the stipulated time
but forget which pill has to be taken at that particular time. This poses a big problem
as it affects the dosage quantum required for the patient that results in not yielding the
right recovery result. It is difficult for doctors/paramedics/attendants to monitor
patients round the clock. In order to avoid these problems, we have implemented the
second module which reminds the patient and the nurses of the medicines to be taken.
This has been achieved by the patient medicine reminder system. This system is
driven by an embedded program that inputs predefined parameters which is processed
based on the input variables entered via a user interface device such as the PC. All the
entries made by on the PC is concurrently and simultaneously displayed on the LCD
panel of the device. The logic for the processing is built into the embedded program to
initiate the alert through an audio alarm. Not only does it have an alarm system, but
also an LCD display which displays which medicine is to be taken at the reminder
time.
1
CHAPTER 2
TECHNICAL BACKGROUND
The system continuously monitors the patient and informs the caretaker from time to
time about the patient regarding the body temperature and heartbeat. When these
parameters reach a critical value whether high or low, the systems detect it and
informs the nurse station wirelessly through RF transmission and alarms the caretaker
through a display and an audio message. Once the caretaker reaches the patient he/she
can switch of the alarm by pressing a switch thus indicating that the patient is being
monitored.
This is done using a few switches and the list of medicines to be administered is
entered through the computer. This data will be stored in the EEPROM by the
microcontroller. The microcontroller continuously reads the time from the RTC
.When the timings read from the RTC equals the timings stored in the EEPROM, the
system alerts the buzzer and displays the list of medicines to be taken at that particular
prescribed time on the LCD. Thus, the patient can listen to the audio indication and
see the name of the medicines on the LCD and take them on time.
2
2.2 PROJECT MODEL
The Patient Station receives input from the sensors process them and transmit the
necessary signals over radio frequency. The Nurse Station receives the signals and
shows the warning messages on the LCD and triggers the buzzer accordingly. The
instantaneous values of the parameters are displayed on the LCD.
3
2.3 COMPONENTS
2.3.1 Sensors
Description: Heart rate data can be really useful when designing a patient monitoring
system, exercise routine, studying one’s activity or anxiety levels. The problem is that
heart rate can be difficult to measure.
Simply clip the Pulse Sensor to your earlobe or finger tip and plug it into your 3 or 5
Volt Arduino or other microcontroller and you’re ready to read heart rate! The 24"
cable on the Pulse Sensor is terminated with standard male headers so there’s no
soldering required.
4
2.3.1.2 Temperature Sensor (LM35)
The operating temperature range is from -55°C to 150°C. The output voltage varies
by 10mV in response to every o C rise/fall in ambient temperature, i.e., its scale factor
is 0.01V/ o C.
5
2.3.2 Microcontrollers
2.3.2.1 ATmega16
6
2.3.2.2 BeyonDuino
The Arduino has become a popular and user-friendly development platform for
makers, electronics enthusiasts and students. But, the Arduino board, by itself, is
extremely limiting in terms of the peripheral devices available on board. Even though
the capabilities of the Arduino can be expanded using Shields, it adds restrictions in
terms of form factor as well as the ability and compatibility in connecting multiple
shields. Another way to interface peripherals to the Arduino can be through simple
bread-boarding, but that is a highly error prone and unscalable thing to do.
Not just that, one of the biggest highlights of the BeyonDuino ecosystem is
that it charts out very clearly the basic concepts of building a microcontroller system
starting from chip up by elaborating the concept of interfacing between various
peripherals, in hardware. In contrast, most of the Arduino based systems tend to
eliminate this aspect by presenting Arduino in a seemingly easy to use wrapper that
inherently takes care of all the low level nitty-gritty like reset, boot loading interface,
etc. While the later approach is many times beneficial and can result is a small ramp
up time for the user, it does not help when one has to design independent systems.
7
The development of the BeyonDuino was inspired by these issues and has resulted in
an Arduino compatible platform that is equipped with a carefully selected set of
peripheral devices that not only enhance the learning experience for beginners of the
Arduino ecosystem but also allow more experienced users to explore various
interesting projects ideas.
8
MyFi is a breakout board for the FTDI FT232RL which is a USB to Serial bridge IC.
It can be used to program the target board as well as communicate by UART for
Serial Monitor, in case of Arduino like boards. It has four signal lines and two lines
for providing power supply (VCC and GND). It works on two voltage logic levels
particularly +3.3 V and +5V. The four signal lines are RX, TX, RTS/DTR and CTS.
The RTS and DTR are on the same line. The DTR pin is used to auto-reset the target
board while uploading sketch/HEX code. RTS pin is an output and CTS pin is an
input. RTS pin should be connected to the CTS pin of the target device. Similarly,
CTS should be connected to RTS of the target. It has three LEDs on the breakout
board namely TX, RX and Power-on LED that blinks when serial data is sent or
received.
2.3 RF Module
9
2.3.2 Encoder IC (HT12E)
The HT 12E Encoder ICs are series of CMOS LSIs for Remote Control system
applications. They are capable of Encoding 12 bit of information which consists of N
address bits and 12-N data bits. Each address/data input is externally ternary
programmable if bonded out.
10
2.3.3 Decoder IC(HT12D)
The HT 12D ICs are series of CMOS LSIs for remote control system applications.
This ICs are paired with each other. For proper operation a pair of encoder/decoder
with the same number of address and data format should be selected. The Decoder
receive the serial address and data from its corresponding decoder, transmitted by a
carrier using an RF transmission medium and gives output to the output pins after
processing the data.
linear voltage regulator ICs. The voltage source in a circuit may have fluctuations and
would not give the fixed voltage output. The voltage regulator IC maintains the output
voltage at a constant value. The xx in 78xx indicates the fixed output voltage it is
suitable values can be connected at input and output pins depending upon the
11
Pin Diagram:
Pin Description:
Table 2.1
\
Pin No Function Name
LCD (Liquid Crystal Display) screen is an electronic display module and find a wide
range of applications. A 16x2 LCD display is very basic module and is very
commonly used in various devices and circuits. These modules are preferred over
seven segments and other multi segment LEDs. The reasons being: LCDs are
economical; easily programmable; have no limitation of displaying special & even
custom characters (unlike in seven segments), animations and so on.
12
A 16x2 LCD means it can display 16 characters per line and there are 2 such lines. In
this LCD each character is displayed in 5x7 pixel matrix. This LCD has two registers,
namely, Command and Data.
The command register stores the command instructions given to the LCD. A
command is an instruction given to LCD to do a predefined task like initializing it,
clearing its screen, setting the cursor position, controlling display etc. The data
register stores the data to be displayed on the LCD. The data is the ASCII value of the
character to be displayed on the LCD.
Pin Diagram:
13
Pin Description:
Table No. 2.2
Pin
Function Name
No.
1 Ground (0V) Ground
2 Supply voltage; 5V (4.7V – 5.3V) Vcc
3 Contrast adjustment; through a variable resistor VEE
4 Selects command register when low; and data register when Register Select
high
5 Low to write to the register; High to read from the register Read/write
6 Sends data to data pins when a high to low pulse is given Enable
7 DB0
8 DB1
9 DB2
10 DB3
8-bit data pins
11 DB4
12 DB5
13 DB6
14 DB7
15 Backlight VCC (5V) Led+
16 Backlight Ground (0V) Led-
2.6 Buzzer
This section includes a buzzer as well as a resistance to limit the current. The buzzer
operates in the range of 20-25mA. The voltage given to the buzzer is 5v and also the
buzzer can operate between 3V-24V. The resistance used is calculated by using the
ohm’s law.
Buzzer is an indicating device which is used for checking the software condition and
also used for indicating any specific condition.
14
Figure 2.13 Buzzer
15
CHAPTER 3
PROJECT DEVELOPMENT
3.1 INTERFACING
16
3.1.2 RECEIVER SIDE
17
3.2 FINAL PCB DESIGN
18
3.3 SYSTEM COST
COMPONENTS COST(Rs.)
ATmega 16 50
RF module 400
Buzzer 10
PCB Cost 50
Resistors, Transistors 10
& LEDs
16 MHz Crystal 20
Oscillator
Momentary Push 10
Button
7805 Voltage Regulator 10
Sensors 250
LCDs 200
19
3.4 REQUIREMENTS
3.5 ADVANTAGES
20
CHAPTER 4
PROGRAM CODING
#include <mega16.h>
#include <delay.h>
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
Func1=In Func0=Out
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=0
PORTD=0x00;
21
DDRD=0x01;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
22
// USART initialization
// USART disabled
UCSRB=0x00;
// ADC initialization
// ADC disabled
ADCSRA=0x00;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
while (1)
{
// Place your code here
if(PINA.4==0)
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("critically low BT");
PORTD.0=1;
delay_ms(1000);
PORTD.0=0;
}
23
if(PINA.4==1)
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("critically high BT");
PORTD.0=1;
delay_ms(4000);
PORTD.0=0;
}
if(PINA.5==0)
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("critically low HB");
PORTD.0=1;
delay_ms(1000);
PORTD.0=0;
}
if(PINA.5==1)
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("critically high HB");
PORTD.0=1;
delay_ms(4000);
PORTD.0=0;
}
if(PINA.0==1)
{
PORTD.0=0;
}
}
}
#include <Wire.h>
#include <Rtc_Pcf8563.h>
#include <LiquidCrystal.h>
#include <String.h>
24
//init the real time clock
Rtc_Pcf8563 rtc;
#define BUZZER 11
#define LED 5
LiquidCrystal lcd(9,10,13,12,4,7);
char time1[10]="10:00:10";
char time2[10]="10:00:20";
char time3[10]="10:00:30";
char time4[10]="10:00:40";
void setup()
lcd.begin(16, 2);
rtc.initClock();
rtc.setDate(10, 2, 5, 0, 16);
pinMode(11,OUTPUT);
25
digitalWrite(BUZZER,HIGH);
pinMode(LED,OUTPUT);
void loop()
//lcd.print(rtc.formatTime(RTCC_TIME_HM));
lcd.clear();
lcd.setCursor(0, 0);
if(!(strcmp((rtc.formatTime()),time1)))
digitalWrite(LED,HIGH);
digitalWrite(BUZZER,LOW);
lcd.clear();
lcd.print("TakeMedicine 1");
lcd.setCursor(0, 1);
lcd.print(rtc.formatTime());
delay(3000);
digitalWrite(BUZZER,HIGH);
26
digitalWrite(LED,LOW);
lcd.clear();
//lcd.print("BUZZER OFF");
delay(3000);
if(!(strcmp((rtc.formatTime()),time2))){
digitalWrite(LED,HIGH);
digitalWrite(BUZZER,LOW);
lcd.clear();
lcd.setCursor(0, 1);
lcd.print(rtc.formatTime());
delay(3000);
digitalWrite(BUZZER,HIGH);
digitalWrite(LED,LOW);
lcd.clear();
//lcd.print("BUZZER OFF");
delay(3000);
if(!(strcmp((rtc.formatTime()),time3))){
digitalWrite(LED,HIGH);
digitalWrite(BUZZER,LOW);
lcd.clear();
lcd.setCursor(0, 1);
27
lcd.print(rtc.formatTime());
delay(3000);
digitalWrite(BUZZER,HIGH);
digitalWrite(LED,LOW);
lcd.clear();
//lcd.print("BUZZER OFF");
delay(3000);
if(!(strcmp((rtc.formatTime()),time4))){
digitalWrite(LED,HIGH);
digitalWrite(BUZZER,LOW);
lcd.clear();
lcd.setCursor(0, 1);
lcd.print(rtc.formatTime());
delay(3000);
digitalWrite(BUZZER,HIGH);
digitalWrite(LED,LOW);
lcd.clear();
//lcd.print("BUZZER OFF");
delay(3000);
lcd.setCursor(0, 1);
//lcd.print(rtc.formatDate(RTCC_DATE_ASIA));
lcd.print(rtc.formatTime());
delay(1000);}
28
CHAPTER 5
5.1 CONCLUSION
By the proposed system basic parameters of a patient like heartbeat and body
temperature can be monitored and a graph of the same can be viewed on the serial
monitor. The system detects when the parameters cross a critical value and inform the
caretakers of the same through a display and audio warning. Also the system keeps a
track of the medicines to be administered to the patient and reminds of it on the
required time.
5.2 LIMITATIONS
The system designed is only for a single patient and only two body parameters. It is
not highly accurate and sensitive.
The system proposed has great chances for further improvements. The resolution of
level sensing can be improved by using highly sensitive multiple sensors. Moreover it
can be designed for multiple patients and a no. of body parameters can be monitored.
This will improve the accuracy, but it increases a lot of cost and complexity. The
system is open for future advancements and enhancements.
29
APPENDIX A: PIN DIAGRAM AND SPECIFICATIONS OF
ATMEGA 16
Pin diagram:
30
Block Diagram :
31
Features-
• High-performance, Low-power Atmel® AVR® 8-bit Microcontroller
• Advanced RISC Architecture
– 131 Powerful Instructions – Most Single-clock Cycle Execution
– 32 x 8 General Purpose Working Registers
– Fully Static Operation
– Up to 16 MIPS Throughput at 16 MHz
– On-chip 2-cycle Multiplier
• High Endurance Non-volatile Memory segments
– 16 Kbytes of In-System Self-programmable Flash program memory
– 512 Bytes EEPROM
– 1 Kbyte Internal SRAM
– Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
– Data retention: 20 years at 85°C/100 years at 25°C
– Optional Boot Code Section with Independent Lock Bits
In-System Programming by On-chip Boot Program
True Read-While-Write Operation
– Programming Lock for Software Security
• JTAG (IEEE std. 1149.1 Compliant) Interface
– Boundary-scan Capabilities According to the JTAG Standard
– Extensive On-chip Debug Support
– Programming of Flash, EEPROM, Fuses, and Lock Bits through the JTAG Interface
• Peripheral Features
– Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes
– One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture
Mode
– Real Time Counter with Separate Oscillator
– Four PWM Channels
– 8-channel, 10-bit ADC
8 Single-ended Channels
7 Differential Channels in TQFP Package Only
2 Differential Channels with Programmable Gain at 1x, 10x, or 200x
32
– Byte-oriented Two-wire Serial Interface
– Programmable Serial USART
– Master/Slave SPI Serial Interface
– Programmable Watchdog Timer with Separate On-chip Oscillator
– On-chip Analog Comparator
• Special Microcontroller Features
– Power-on Reset and Programmable Brown-out Detection
– Internal Calibrated RC Oscillator
– External and Internal Interrupt Sources
– Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby
and Extended Standby
• I/O and Packages
– 32 Programmable I/O Lines
– 40-pin PDIP, 44-lead TQFP, and 44-pad QFN/MLF
• Operating Voltages
– 2.7V - 5.5V for ATmega16L
– 4.5V - 5.5V for ATmega16
• Speed Grades
– 0 - 8 MHz for ATmega16L
– 0 - 16 MHz for ATmega16
• Power Consumption @ 1 MHz, 3V, and 25°C for ATmega16L
– Active: 1.1 mA
– Idle Mode: 0.35 mA
– Power-down Mode: < 1 μA
33
APPENDIX B: PIN DIAGRAM AND SPECIFICATIONS
OF ATMEGA 328P
Pin Diagram:
34
Features:
Pins 28
I/O Pins 23
USART Yes
35
Pin Mapping:
36
Block Diagram:
37
APPENDIX C: FTDI DETAILS
Schematic Layout:
38
Pin Description:
39
17 3V3OUT Output +3.3V output from integrated LDO
regulator. This pin should be
decoupled to ground using a 100nF
capacitor. The main use of this pin is
to provide the internal +3.3V supply
to the USB transceiver cell and the
internal 1.5kΩ pull up resistor on
USBDP. Up to 50mA can be drawn
from this pin to power external logic
if required. This pin can also be used
to supply the VCCIO pin.
20 VCC PWR +3.3V to +5.25V supply to the device
core.
25 AGND PWR Device analogue ground supply for
internal clock multiplier
40
for normal operation.
28 OSCO Output Output from 12MHZ Oscillator Cell.
Optional – Can be left unconnected
for normal operation if internal
Oscillator is used.
41
13 CBUS2 I/O Configurable CBUS I/O Pin.
Function of this pin is configured in
the device internal EEPROM.
Factory default configuration is
TXDEN.
14 CBUS3 I/O Configurable CBUS I/O Pin.
Function of this pin is configured in
the device internal EEPROM.
Factory default configuration is
PWREN#. PWREN# should be used
with a 10kΩ resistor pull up.
22 CBUS1 I/O Configurable CBUS I/O Pin.
Function of this pin is configured in
the device internal EEPROM.
Factory default configuration is
RXLED#.
23 CBUS0 I/O Configurable CBUS I/O Pin.
Function of this pin is configured in
the device internal EEPROM.
Factory default configuration is
TXLED#.
42
APPENDIX D: Code Vision AVR Evaluation V2.05.5a
43
• Delays
• Gray code conversion.
CodeVisionAVR also contains the CodeWizardAVR Automatic Program Generator,
that allows you to write, in a matter of minutes, all the code needed for implementing
the following functions: External memory access setup
• Chip reset source identification
• Input/ Output Port initialization
• External Interrupts initialization
• Timers/Counters initialization
• Watchdog Timer initialization
• UART initialization and interrupt driven buffered serial communication
• Analog Comparator initialization
• ADC initialization
• SPI Interface initialization
• I2C Bus, LM75 Temperature Sensor, DS1621 Thermometer/Thermostat and
PCF8563, PCF8583, DS1302, DS1307 Real Time Clocks initialization
• 1 Wire Bus and DS1820/DS18S20 Temperature Sensors initialization
• LCD module initialization.
44
APPENDIX E: ARDUINO IDE 1.5.6
45
Fig. E.1: Screenshot of the Arduino IDE showing the Blink simple beginner program
46
REFERENCES
47