report on embeded system using pic microcontroller …report4vr.yolasite.com/resources/main file...

54
E.C.E. DEPARTMENT KUK MADE BY: - RAJAT AGGARWAL REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER December 10 2012 IN THIS REPORT WE PROVIDE THAT WHAT SOFTWARE IS USE TO WRITE THE PROGRAM AND ALSO PROVIDE HOW IT IS USE… AND SOME PROGRAMS ALSO PROVIDE. THESE PROGRAMS ARE PRACTICALLY DONE ON THE PIC MICROCONTROLLER. H.C.T.M. COLLEGE KAITHAL FOR FURTHER ANY QUARIES SEND MAIL ON [email protected] or [email protected] or [email protected]

Upload: ngodat

Post on 05-Feb-2018

239 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

E.C.E. DEPARTMENT

KUK

MADE BY: - RAJAT AGGARWAL

REPORT ON EMBEDED SYSTEM

USING PIC MICROCONTROLLER

December 10

2012 IN THIS REPORT WE PROVIDE THAT WHAT SOFTWARE IS USE TO WRITE THE PROGRAM AND ALSO PROVIDE HOW IT IS USE… AND SOME PROGRAMS ALSO PROVIDE. THESE PROGRAMS ARE PRACTICALLY DONE ON THE PIC MICROCONTROLLER.

H.C.T.M. COLLEGE KAITHAL

FOR FURTHER ANY QUARIES SEND MAIL ON

[email protected] or [email protected] or [email protected]

Page 2: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

A

TRAINING REPORT

On

EMBEDED SYSTEM

WITH

PIC MICROCONTROLLER Submitted in the partial fulfillment for the award of Degree of

Bachelor of Technology

In

HCTM TECHNICAL CAMPUS

Submitted by Submitted to

Rajat Aggarwal ER. Palvinder Singh

1710240 ER. Baljinder Kumar

E.C.E. “A”

DEPPT. OF ELECTRONICS & COMMUNICATION ENGINEERING KURUKSHETRA UNIVERSITY KURUKSHETRA

Page 3: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

CONTENTS

Acknowledgement

Company Certificate

PIC microcontrollers

PIC 16F73 features

Pin diagram of PIC16F73

Pin description of PIC16F73

Core Architecture

Programming of PIC

Compiler Used-mikroC

Features

Projects

Functionality

Programming and Interfacing

Advantages of C over Assembly language programming

Project no. 1- LED interfacing and its blinking(port programming)

Project no. 2- seven segment interfacing and display

Project no. 3- Interfacing and control of stepper motor with PIC

16F73

Project no. 4-LCD interfacing and display with PIC 16F73

Project no. 5-Builtin ADC of PIC16F73(Temperature Monitoring)

Project no. 6-To study switching action of PIC pins.

Project no. 7-Interfacing of keyboard matrix

Project no. 8-Serial communication [b/w PC & Microcontroller]

BIBLIOGRAPHY

Page 4: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

ACKNOWLEDGEMENT

I am also grateful to Mr. Sanjeev Kumar training incharge for giving best knowledge about my project. The way he instilled knowledge of the subject was undoubtly praise worthy and valuable.

I am also thankful to NETMAX institute as a whole that is doing yeoman’s service by teaching the learner abreast with the embeded system, microcontrollers etc.. knowledge that is the need of the day.

We are also grateful to our H.O.D. sir Mr. Rajeev Chechi and our lect. ER. Palvinder Singh and ER. Baljinder Kumar for his valuable guidance, constant supervision and encouragement during our training.

We are also grateful to our parents and friends for their valuable guidance and encouragement during our project.

Last but not the least; I thank all my classmates at NETMAX for extending kind Co-operation.

Rajat Aggarwal

1710240

B.Tech (ECE)

3rd Year

Page 5: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

SCAN OF CERTIFICATE

IS PLACE HERE

COMPANY CERTIFICATE

Page 6: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PIC

MICROCONTROLLER

Page 7: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PIC 16 Series-PIC16f73

PIC is a family of Harvard architecture microcontrollers made by Microchip

Technology, derived from the PIC1640 originally developed by General

Instrument's Microelectronics Division. The name PIC initially referred to

"Peripheral Interface Controller".

It is available in different configurations viz 8bit,16 bit,32 bit with instructions

set as given below :

Under 8 bit comes-PIC10 xxxx, PIC12 xxxx, PIC16 xxxx, PIC18 xxxx.(12 bit

instruction set)

Under 16 bit comes-PIC24H,DSPIC30,DSPIC33. (14 bit instruction set)

Under 32 bit comes-PIC32xxxx. (16 bit instruction set)

PICs are popular with developers and hobbyists alike due to their low cost, wide

availability, large user base, extensive collection of application notes,

availability of low cost or free development tools, and serial programming (and

re-programming with flash memory) capability.

Page 8: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Special Microcontroller Features:-

• High performance RISC CPU.

• Only 35 single word instructions to learn.

• All single cycle instructions except for program branches which are two-cycle.

• Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle.

• Up to 8K x 14 words of FLASH Program Memory, Up to 368 x 8 bytes of

Data Memory (RAM).

• Interrupt capability (up to 12 sources).

• Eight level deep hardware stack.

• Direct, Indirect and Relative Addressing modes.

• Processor read access to program memory.

• Power-on Reset (POR).

• Power-up Timer (PWRT) and Oscillator Start-up Timer (OST).

• Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable

operation.

• Programmable code protection

• Power saving SLEEP mode

• Selectable oscillator options

• In-

Peripheral Features:-

• Timer0: 8-bit timer/counter with 8-bit pre-scaler.

PICs are popular with developers and hobbyists alike due to their low cost, wide

availability, large user base, extensive collection of application notes,

availability of low cost or free development tools, and serial programming (and

re-programming with flash memory) capability.

Page 9: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Special Microcontroller Features:-

• High performance RISC CPU.

• Only 35 single word instructions to learn.

• All single cycle instructions except for program branches which are two-cycle.

• Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle.

• Up to 8K x 14 words of FLASH Program Memory, Up to 368 x 8 bytes of

Data Memory (RAM).

• Interrupt capability (up to 12 sources).

• Eight level deep hardware stack.

• Direct, Indirect and Relative Addressing modes.

• Processor read access to program memory.

• Power-on Reset (POR).

• Power-up Timer (PWRT) and Oscillator Start-up Timer (OST).

• Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable

operation.

• Programmable code protection

• Power saving SLEEP mode

• Selectable oscillator options

• In-

Peripheral Features:-

• Timer0: 8-bit timer/counter with 8-bit prescaler.

Timer1: 16-bit timer/counter with prescaler, can be incremented during SLEEP

via external crystal/clock.

• Timer2: 8-bit timer/counter with 8-bit period register, prescaler and postscaler.

• Two Capture, Compare, PWM modules

Page 10: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

- Capture is 16-bit, max. resolution is 12.5 ns

- Compare is 16-bit, max. resolution is 200 ns

- PWM max. resolution is 10-bit.

• 8-bit, up to 8-channel Analog-to-Digital converter.

• Synchronous Serial Port (SSP) with SPI (Master mode) and I2C(Slave).

• Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI).

• Parallel Slave Port (PSP), 8-bits wide with external RD, WR and CS controls

(40/44-pin only).

• Brown-out detection circuitry for Brown-out Reset (BOR).

CMOS Technology:-

• Low power, high speed CMOS FLASH technology.

• Fully static design.

• Wide operating voltage range: 2.0V to 5.5V.

• High Sink/Source Current: 25 Ma.

• Industrial temperature range.

• Low power consumption:

- < 2 mA typical @ 5V, 4 MHz

Page 11: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PIN DIAGRAM

Page 12: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PIN DESCRIPTION

MCLR-(pin 1):-

PIC16F7X devices have a noise filter in the MCLR Reset path. The filter will

detect and ignore small pulses. It should be noted that a WDT Reset does not

drive MCLR pin low. The behavior of the ESD protection on the MCLR pin has

been altered from previous devices of this family. Voltages applied to the pin

that exceed its specification can result in both MCLR Resets and excessive

current beyond the device specification during the ESD event. For this reason,

Microchip recommends that the MCLR pin no longer be tied directly to VDD.

RESET:-

The PIC16F7X differentiates between various kinds of RESET:

Power-on Reset (POR)

MCLR Reset during normal operation

MCLR Reset during SLEEP

WDT Reset (during normal operation)

WDT Wake-up (during SLEEP)

Brown-out Reset (BOR)

Some registers are not affected in any RESET condition. Their status is

unknown on POR and unchanged n any other RESET. Most other registers are

reset to a RESET state” on Power-on Reset (POR), on the MCLR and WDT

Reset, on MCLR Reset during LEEP, and Brown-out Reset (BOR). They are

not affected by a WDT Wake-up, which is viewed as the resumption of normal

operation. The TO and PD bits are set or cleared differently in different RESET

situations, as indicated

Page 13: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PORTA –(pin 2 to 7)and the TRISA Register:-

PORTA is a 6-bit wide, bi-directional port. The corresponding data direction

register is TRISA. Setting a TRISA bit (= ‘1’) will make the corresponding

PORTA pin an input (i.e., put the corresponding output driver in a Hi-

Impedance mode). Clearing a TRISA bit (= ‘0’) will make the corresponding

PORTA pin an output (i.e., put the contents of the output latch on the selected

pin).

Reading the PORTA register reads the status of the pins, whereas writing to it

will write to the port latch. All write operations are read-modify-write

operations. Therefore, a write to a port implies that the port pins are read, the

value is modified and then written to the port data latch.

GND –(pin 8):-

Provide Ground to it.

OSC1/CLKIN-(pin 9):-

Oscillator crystal input/external clock source input

OSC2/CLKOUT-(pin 10):-

Oscillator crystal output. Connects to crystal or resonator in Crystal

Oscillator mode. In RC mode, the OSC2 pin outputs CLKOUT

which has 1/4 the frequency of OSC1, and denotes the instruction

cycle rate.

Page 14: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

OSCILLATOR TYPES

The PIC16F7X can be operated in four different oscillator modes:

LP Low Power Crystal

XT Crystal/Resonator

HS High Speed Crystal/Resonator

RC Resistor/Capacitor

PORTC and the TRISC Register(pin 11 to 18):-

PORTC is an 8-bit wide, bi-directional port. The corresponding data direction

register is TRISC. Setting a TRISC bit (= ‘1’) will make the corresponding

PORTC pin an input (i.e., put the corresponding output driver in a Hi-

Impedance mode). Clearing a TRISC bit (= ‘0’) will

make the corresponding PORTC pin an output (i.e., put the contents of the

output latch on the selected pin).

PORTC is multiplexed with several peripheral functions PORTC pins have

Schmitt Trigger input buffers. When enabling peripheral functions, care should

be taken in defining TRIS bits for each PORTC pin.

Vss(pin 19):-

Ground reference for logic and I/O pins

Vdd(pin 20):-

Positive supply for logic and I/O pins

Page 15: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PORTB and the TRISB Register(pin 21 to 28):-

PORTB is an 8-bit wide, bi-directional port. The corresponding data direction

register is TRISB. Setting a TRISB bit (= ‘1’) will make the corresponding

PORTB pin an input (i.e., put the corresponding output driver in a Hi-

Impedance mode). Clearing a TRISB bit (= ‘0’) will make the corresponding

PORTB pin an output (i.e., put the contents of the output latch on the selected

pin).

Each of the PORTB pins has a weak internal pull-up. A single control bit can

turn on all the pull-ups. The weak pull-up is automatically turned off when the

port pin is configured as an output. The pull-ups are disabled on a Power-on

Reset.

Page 16: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

CORE ARCHITECTURE

Figure 2.1: Showing a typical microcontroller device and its different subunits

Page 17: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

The PIC architecture is distinctively minimalist. It is characterized by the

following features:

Separate code and data spaces (Harvard architecture)

A small number of fixed length instructions

Most instructions are single cycle execution (4 clock cycles), with single

delay cycles upon branches and skips

A single accumulator (W), the use of which (as source operand) is

implied (i.e. is not encoded in the opcode)

All RAM locations function as registers as both source and/or destination

of math and other functions.

A hardware stack for storing return addresses

A fairly small amount of addressable data space (typically 256 bytes),

extended through banking

Data space mapped CPU, port, and peripheral registers

The program counter is also mapped into the data space and writable (this

is used to implement indirect jumps).

Unlike most other CPUs, there is no distinction between memory space and

register space because the RAM serves the job of both memory and registers,

and the RAM is usually just referred to as the register file or simply as the

registers

Page 18: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROGRAMMING OF PIC

COMPILER USED:-

mikroC

Introduction to mikroC:-

mikroC is a powerful, feature rich development tool for PICmicros. It is

designed to provide the programmer with the easiest possible solution for

developing applications for embedded systems, without compromising

performance or control.

mikroC IDE

Page 19: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PIC and C fit together well: PIC is the most popular 8-bit chip in the world,

used in a wide variety of applications, and C, prized for its efficiency, is the

natural choice for developing embedded systems. mikroC provides a successful

match featuring highly advanced IDE, ANSI compliant compiler, broad set of

hardware libraries, comprehensive documentation, and plenty of ready-to-run

examples.

Features:-

mikroC allows you to quickly develop and deploy complex applications:

Write your C source code using the built-in Code Editor (Code and

Parameter Assistants, Syntax Highlighting, Auto Correct, Code

Templates, and more…)

Use the included mikroC libraries to dramatically speed up the

development: data acquisition, memory, displays, conversions,

communications… Practically all P12, P16, and P18 chips are supported.

Monitor your program structure, variables, and functions in the Code

Explorer.

Generate commented, human-readable assembly, and standard HEX

compatible with all programmers.

Inspect program flow and debug executable logic with the integrated

Debugger.

Get detailed reports and graphs: RAM and ROM map, code statistics,

assembly listing, calling tree, and more…

We have provided plenty of examples for you to expand, develop, and

use as building bricks in your projects. Copy them entirely if you deem fit

– that’s why we included them with the compiler.

Page 20: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Projects:-

mikroC organizes applications into projects, consisting of a single project file

(extension .ppc) and one or more source files (extension .c). You can

compile source files only if they are part of a project.

The project file carries the following information:

project name and optional description,

target device,

device flags (config word),

device clock,

Page 21: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

New Project:-

The easiest way to create project is by means of New Project Wizard, drop-

down menu Project › New Project. Just fill the dialog with desired values

(project name and description, location, device, clock, config word) and mikroC

will create the appropriate project file . Also, an empty source file named after

the project will be created by default. mikroC does not require you to have

source file named same as the project, it’s just a matter of convenience.

Edit Project:-

Later, you can change project settings from the drop-down menu Project › Edit

Project. You can rename the project, modify its description, change chip, clock,

config word, etc.

Also mikroC has some pre defined functions:

Commonly used is

1). Delay_ms(time)-it provides a delay of spcified time in ms.

Its internal code is similar to code given below:

Void delay_ms()

{int I;

While (i !=0)

{

i--;

}

Also PIC has a internal TRIS register which controls the flow of insructions

from the corresponding port.

Page 22: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROGRAMMING AND INTERFACING

Advantages of C over Assembly language programming:-

Knowledge of the processor instruction set is not required.

Details like register allocation and addressing of memory and data is

managed by the compiler.

Programs get a formal structure and can be divided into separate functions.

Programming and program test time is drastically reduced, this increases

efficiency.

Keywords and operational functions can be used that come closer to how

humans think.

The supplied and supported C libraries contain many standard routines such

as numeric conversions.

Reusable code: Existing program parts can be more easily included into new

programs, because of the comfortable modular program construction

techniques.

The C language based on the ANSI standard is very portable. Existing

programs can be quickly adapted to other processors as needed.

Page 23: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-1:-

LED INTERFACING AND ITS BLINKING

(PORT PROGRAMMING)

Page 24: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

the interfacing of LED is shown in the figure above.it is given Vcc through

resistors of 330E.

also a darlington pair IC is also used i.e. ULN 2803 which shift the dc level of

volage coming from port of pic microcontroller.

Now to glow the desired LED, proper hexadecimal code for its binary is

programmed in pic.eg.to glow alternative LED’s the binary code will

be10101010 and its corresponding hexadecimal code will be 0xAA.

So,0xAA is fed to controller with coding.

Also PIC has a internal TRIS register which controls the flow of insructions

from the corresponding port i.ee PORT will behave as input(if =1) and as

output(if=0).

CODING FOR BLINKING:-

void main()

{

PORTC = 0; // Initialize PORTC

TRISC = 0; // Configure PORTC as output

while(1)

{

PORTC = OxAA; // gives code 10101010 to PORTC

Delay_ms(1000); // one second delay

}}

Thus LED Blinking practical is done sucessfully

Page 25: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-2:-

SEVEN SEGMENT INTERFACING

AND

DISPLAY

A Seven segment display consists of seven LED’s arranged in pattern of digit

like 8

We use a bcd to seven segment decoder which saves pin of microcontroller

from seven (one for each Led) to four. So we have to give bcd code for desired

digit to be displayed on it.

Now also we can display more than one seven segment display simultaneously

but it will take a number of pins of controller. So we use two pins from

controller to control the display of seven segment one by one from same port

such that it appears to be displaying simultaneously. This is done by providing a

very small delay such that our eyes can’t even detect the change over from one

display to another.

Page 26: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

CODING FOR DISPLAY:-

//seven segment display -common anode for 2 digit

void bcd(unsigned int x);

void delay(unsigned int k) ;

void main()

{

unsigned int i=0;

TRISB=0X00;

while(1)

{

i++;

bcd(i);

//delay_ms(20);

}}

void bcd(unsigned int x)

{

unsigned char z,y,a;

if(x<100)

{

for(a=0;a<100;a++)

Page 27: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

{

y=(x/10)*6+x;

y=y>>4;

y=y|0xe0;

PORTB=y;

delay(250);

z=(x/10)*6+x;

z=z&0x0f;

z=z|0xd0;

PORTB=z;

delay(250);

}}}

void delay(unsigned int k)

{

while(k!=0)

{

k--;

}}

Page 28: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-3:-

INTERFACING AND CONTROL OF STEPPER MOTOR

WITH PIC 16F73

Stepper motor are those which rotates in steps.like all motors it is also based on

electromagnetic induction i.e. electric field produces a magnetic field whose

variation causes a torque which rotates the motor.

A stepper motor is a brushless, synchronous electric motor that can divide a

full rotation into a large number of steps. The motor's position can be controlled

precisely, without any feedback mechanism (see open loop control). Stepper

motors are similar to switched reluctance motors, which are very large stepping

motors with a reduced pole count, and generally are closed-loop commutated.

Fundamentals of Operation

Stepper motors operate much differently from normal DC motors, which rotate

when voltage is applied to their terminals. Stepper motors, on the other hand,

effectively have multiple "toothed" electromagnets (a.k.a. phases) arranged

around a central gear-shaped piece of iron. The electromagnets are energized by

an external control circuit, such as a microcontroller. To make the motor shaft

turn, first one electromagnet is

Page 29: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

given power, which makes the gear's teeth magnetically attracted to the

electromagnet's teeth. When the gear's teeth are thus aligned to the first

electromagnet, they are slightly offset from the next electromagnet. So when the

next electromagnet is turned on and the first is turned off, the gear rotates

slightly to align with the next one, and from there the process is repeated. Each

of those slight rotations is called a "step." In that way, the motor can be turned a

precise angle.

Now to run the motor we have to feed the binary code to turn on the current of

that winding…

For pair 1st-00000011(binary)-0x03

For pair 2nd

-00000110(binary)-0x06

For pair 3rd

-000001100(binary)-0x0c

For pair 4th

-00011000(binary)-0x09

CODE IS:-

#define l1 PORTB.F0

#define l2 PORTB.F1

#define l3 PORTB.F2

Page 30: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

#define l4 PORTB.F3

void forward();

void backward();

void main()

{

PORTC=0XFF;

TRISB=0X00;

while(1)

{

forward();

delay_ms(2000);

backward();

delay_ms(2000);

}

}

void forward() //half stepping

{

unsigned char a;

for(a=0;a<10;a++)

Page 31: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

{

l1=1; l2=0; l3=0; l4=0; delay_ms(100);

l1=0; l2=1; l3=0; l4=0; delay_ms(100);

l1=0; l2=0; l3=1; l4=0; delay_ms(100);

l1=0; l2=0; l3=0; l4=1; delay_ms(100);

}}

void backward()

{

unsigned char b;

for(b=0;b<10;b++)

{

l1=0; l2=0; l3=0; l4=1; delay_ms(100);

l1=0; l2=0; l3=1; l4=0; delay_ms(100);

l1=0; l2=1; l3=0; l4=0; delay_ms(100);

l1=1; l2=0; l3=0; l4=0; delay_ms(100);

}}

The above code will rotate the motor first in forward direction and then in

reverse direction.

Thus,stepper motor has been studied successfully.

Page 32: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-4:-

LCD INTERFACING AND DISPLAY

LCD stands for Liquid Crystal Display.to run it via PIC 16F73,we need

command signals and vcc to drive it.now the signal that is required to display

character is produced by an IC which is already embedded on it.its name is

HD44780.

PIN NO. NAME FUNCTION

1 Vss Ground

2 Vdd +ve supply

3 Vee contrast

4 RS Register select

5 R/W Read/Write

6 E Enable

7 D0 Data Bit 0

8 D1 Data Bit 1

9 D2 Data Bit 2

10 D3 Data Bit 3

11 D4 Data Bit 4

12 D5 Data Bit 5

13 D6 Data Bit 6

14 D7 Data Bit 7

Page 33: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Connections are shown as below

CODING:-

void main()

{

TRISB = 0; // PORTB is output

Lcd_Init(&PORTB); // Initialize LCD connected to PORTB

Lcd_Cmd(Lcd_CLEAR); // Clear display

Lcd_Cmd(Lcd_CURSOR_OFF); // Turn cursor off

Lcd_Out(1, 5,"HELLO"); // Print text to LCD, 1nd row, 5tH column

}

The above code will display HELLO on LCD.

The functions like Lcd_Init(),Lcd_cmd,Lcd_out are predefined functions in

mikroC which initialize,gives command and displays respectively.

Page 34: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Now also it is possible to scroll the characters on LCD. Its code is as follows:

Coding for scrolling:-

char *text = "AMAN" ;

char *text1 = "10748" ;

void main()

{

TRISB = 0; // PORTB is output

Lcd_Init(&PORTB); // Initialize LCD connected to PORTB

Lcd_Cmd(Lcd_CLEAR); // Clear display

Lcd_Cmd(Lcd_CURSOR_OFF); // Turn cursor off

Lcd_Out(1, 5,text); // Print text to LCD, 2nd row, 1st column

Lcd_Out(2, 5,text1);

while(1)

{

Lcd_Cmd(LCD_SHIFT_LEFT);

delay_ms(1000);

}

}

It will shift the character to the left with a delay of 1 sec between it.

Thus LCD display and scroll is studied successfully.

Page 35: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-5

BUILT IN ADC OF PIC16F73

(TEMPERATURE MONITORING)

PIC16F73 consists of 5 internal ADC .

AD are available in different configurations according to their bit channels.viz 8

bit(costs Rs.120),10bit(costs Rs.600),12 bit(costs Rs.1200-2000) ,14 bit(costs

Rs.2000-4000),16bit(costs Rs.4000-25000),24bit(costs >25000).

These are externally connected to microcontroller like AT89s51 which don’t

have inbuilt ADC.

Now as PIC 16xxx has got the feature of inbuilt ADC.so,there is no need to

connect externally.PIC16XXX is featured with 8 bit ADC.

So can convert an analog value to 8 bit binary or from 0 to 255 in decimal

range.

The 8-bit analog-to-digital (A/D) converter module has five inputs for the

PIC16F73/76 and eight for the PIC16F74/77.

The A/D allows conversion of an analog input signal to a corresponding 8-bit

digital number. The output of the sample and hold is the input into the

converter, which generates the result via successive approximation. The

analog reference voltage is software selectable to either the device’s positive

supply voltage (VDD), or the voltage level on the RA3/AN3/VREF pin.

The A/D converter has a unique feature of being able to operate while the

device is in SLEEP mode. To operate in SLEEP, the A/D conversion clock must

be derived from the A/D’s internal RC oscillator.

The A/D module has three registers. These registers

Page 36: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

are:

• A/D Result Register (ADRES)

• A/D Control Register 0 (ADCON0)

• A/D Control Register 1 (ADCON1)

The ADCON0 register, shown in Register 11-1, controls the operation of the

A/D module. The ADCON1 register, shown in Register 11-2, configures the

functions of the port pins. The port pins can be configured as analog inputs

(RA3 can also be a voltage reference), or as digital I/O.

ADC HARDWARE CONNECTION

From 4th

pin we are gaetting Analog input.

Page 37: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

ADCON0 REGISTER (ADDRESS 1Fh)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0

ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/DONE -------- ADON

bit 7 bit 0

bit 7-6 ADCS1:ADCS0: A/D Conversion Clock Select bits

00 = FOSC/2

01 = FOSC/8

10 = FOSC/32

11 = FRC (clock derived from the internal A/D module RC oscillator)

bit 5-3 CHS2:CHS0: Analog Channel Select bits

000 = channel 0, (RA0/AN0)

001 = channel 1, (RA1/AN1)

010 = channel 2, (RA2/AN2)

011 = channel 3, (RA3/AN3)

100 = channel 4, (RA5/AN4)

101 = channel 5, (RE0/AN5)(1)

110 = channel 6, (RE1/AN6)(1)

111 = channel 7, (RE2/AN7)(1)

bit 2 GO/DONE: A/D Conversion Status bit

If ADON = 1:

1 = A/D conversion in progress (setting this bit starts the A/D conversion)

0 = A/D conversion not in progress (This bit is automatically cleared by

hardware when

the A/D conversion is complete)

bit 1 Unimplemented: Read as '0'

bit 0 ADON: A/D On bit

1 = A/D converter module is operating

0 = A/D converter module is shutoff and consumes no operating current

Page 38: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

ADCON1 REGISTER (ADDRESS 9Fh)

U-0 U-0 U-0 U-0 U-0 R/W-0 R/W-0 R/W-0

— — — — — PCFG2 PCFG1 PCFG0

bit 7-3 Unimplemented: Read as '0'

bit 2-0 PCFG2:PCFG0: A/D Port Configuration Control bits.

PCFG2:PCFG0 RA0 RA1 RA2 RA5 RA3 RE0(1) RE1(1) RE2(1)

VREF

000 A A A A A A A A VDD

001 A A A A VREF A A A RA3

010 A A A A A D D D VDD

011 A A A A VREF D D D

RA3

100 A A D D A D D D VDD

101 A A D D VREF D D D

RA3

11x D D D D D D D D VDD

A = Analog input

D = Digital I/O

So,ADC will be provided analog input from different channels and

correspondingly these registers are

set.

Page 39: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Now,coding to display voltage through temperature sensor

void ascii(unsigned int digit);

unsigned char table[]={'0','1','2','3','4','5','6','7','8','9'};

void main()

{

unsigned int e,f;

Lcd_Init(&PORTB);

Lcd_Cmd(Lcd_Clear);

Lcd_Cmd(LCD_CURSOR_OFF);

Lcd_Out(1, 1, "sensor temp=");

ADCON0 = 0x45; // Configure analog inputs and Vref

ADCON1 = 0x01;

TRISA = 0xFF; // PORTA is input

TRISB=0;

while(1)

{

e = Adc_Read(1); // first sensor

ascii(e);

Page 40: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

delay_ms(1000) ;

f= Adc_Read(2); // second sensor

ascii(f) ;

}

}

void ascii(unsigned int digit)

{

unsigned char temp;

if(digit<100) //DECIMAL OR BINARY TO ASCII

{

temp=digit/10;

Lcd_Chr(1, 1, table[temp] );

temp=digit-temp*10;

Lcd_Chr(1, 2,table[temp] );

}}

Page 41: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-6:-

TO STUDY SWITCHING ACTION OF PIC PINS.

As in AT89s51,the way of addressing pins is by p0.0,p0.1…..so on.

Similarly in PIC it is possible to address pins using

Syntax:

PORT( NAME).F(0 to 7)

Now pin can be put ON or OFF according to via resistor.

Internally,when pin is high its flip flop is sat.when external switch is closed ,it

forces no current or voltage to enter to pin and also lowers the pin from 1 to 0.

Thus when switch is pressed ,the pin becomes zero.so ,implementing this in

practical.

The swiches whose one end are connected to pins of nontroller are shown on

next page

Page 42: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

The coding will be as follos:

#define s0 PORTC.F0

#define s1 PORTC.F1

#define s2 PORTC.F2

#define s3 PORTC.F3

#define s4 PORTC.F4

void main()

{

TRISB=0x00; \\ PORT B AS OUTPUT

TRISC=0xff; \\PORT C as input

PORTC=0xff; \\ ALL F/F’S TO SET

do

{

if(s0==0) \\1st switch is pressed

{

PORTB=0x80; \\1st LED glows

delay_ms(600);

}

if(s1==0) \\2nd switch is pressed

{

PORTB=0x40; \\2nd LED glows

delay_ms(600);

Page 43: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

}

if(s2==0) \\3rd switch is pressed

{

PORTB=0x20; \\3rd LED glows

delay_ms(600);

}

if(s3==0) \\4th switch is pressed

{

PORTB=0x10; \\4th LED glows

delay_ms(600);

}

else

{

PORTB=0xff;

}}

while(1);

}

Thus switching action is studied.

Page 44: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-7:-

INTERFACING OF KEYBOARD MATRIX

As in last practical, we use one switch per pin of controller. So, to use 8 pins for

8 switches.

While if it is desired to have more options for a pin, a matrix is formed in which

row and column are made such that each pin can control more than one switch

or vice versa.

h/w connection are

Page 45: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

The coding for keyboard (4*4) matrix is as follows:

#define R1 PORTB.F0

#define R2 PORTB.F1

#define R3 PORTB.F2

#define R4 PORTB.F3

#define C1 PORTB.F4

#define C2 PORTB.F5

#define C3 PORTB.F6

#define C4 PORTB.F7

void main()

{

TRISB=0XFF;

TRISC=0X00;

PORTC=0X00;

PORTB=0XFF;

while(1)

{

if(R1==0 && C1==0)

{

PORTC=1;

}

if(R1==0 && C2==0)

{

PORTC=2;

Page 46: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

}

if(R1==0 && C3==0)

{

PORTC=3;

}

if(R1==0 && C4==0)

{

PORTC=4;

}

if(R2==0 && C1==0)

{

PORTC=5;

}

if(R2==0 && C2==0)

{

PORTC=6;

}

if(R2==0 && C3==0)

{

PORTC=7;

}

if(R2==0 && C4==0)

{

PORTC=8;

Page 47: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

}

if(R3==0 && C1==0)

{

PORTC=9;

}

if(R3==0 && C2==0)

{

PORTC=10;

}

if(R3==0 && C3==0)

{

PORTC=11;

}

if(R3==0 && C4==0)

{

PORTC=12;

}

if(R4==0 && C1==0)

{

PORTC=13;

}

if(R4==0 && C2==0)

{

PORTC=14;

Page 48: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

}

if(R4==0 && C3==0)

{

PORTC=15;

}

if(R4==0 && C4==0)

{

PORTC=16;

}

}

}

Thus,the keyboard matrx practical is performed.

Page 49: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

PROJECT NO-8

SERIAL COMMUNICATION(B/W PC AND MICROCONTROLLER)

To send data via single line through a bit stream is known as serial

communication.

Reception is of type SIPO-Serial Input Parallel Output.

Transmission is of type PISO-Parallel Input Serial Output.

Clock used in serial communication is called BAUD RATE.

PIC has two buffers and it allows full duplex communication.to change settings

we have to re configure TXSTA register

Page 50: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

The Universal Synchronous Asynchronous Receiver Transmitter (USART)

module is one of the two serial I/O modules. (USART is also known as a Serial

Communications Interface or SCI.) The USART can be configured

as a full duplex asynchronous system that can communicate with peripheral

devices, such as CRT terminals and personal computers, or it can be configured

as a half duplex synchronous system that can communicate with peripheral

devices, such as A/D or D/A integrated

circuits, serial EEPROMs, etc.

The USART can be configured in the following modes:

• Asynchronous (full duplex)

• Synchronous - Master (half duplex)

• Synchronous - Slave (half duplex)

Bit SPEN (RCSTA<7>) and bits TRISC<7:6> have to be set in order to

configure pins RC6/TX/CK and RC7/RX/DT as the Universal Synchronous

Asynchronous Receiver Transmitter.

TXSTA: TRANSMIT STATUS AND CONTROL REGISTER (ADDRESS 98h

R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0 R-1 R/W-0

CSRC TX9 TXEN SYNC — BRGH TRMT TX9D

bit 7 CSRC: Clock Source Select bit

Asynchronous mode:

Don’t care

Synchronous mode:

1 = Master mode (Clock generated internally from BRG)

0 = Slave mode (Clock from external source)

bit 6 TX9: 9-bit Transmit Enable bit

Page 51: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

1 = Selects 9-bit transmission

0 = Selects 8-bit transmission

bit 5 TXEN: Transmit Enable bit

1 = Transmit enabled

0 = Transmit disabled

Note: SREN/CREN overrides TXEN in SYNC mode.

bit 4 SYNC: USART Mode Select bit

1 = Synchronous mode

0 = Asynchronous mode

bit 3 Unimplemented: Read as '0'

bit 2 BRGH: High Baud Rate Select bit

Asynchronous mode:

1 = High speed

0 = Low speed

Synchronous mode:

Unused in this mode

bit 1 TRMT: Transmit Shift Register Status bit

1 = TSR empty

0 = TSR full

bit 0 TX9D: 9th bit of transmit data. Can be parity bit

now in mikroC UART terminal also work as shown as

Page 52: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

Now coding

1).to transmit data..

void main()

{

usart_init(2400);

while(1)

{

usart_write('A');

usart_write('M');

usart_write('A');

Page 53: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

usart_write('N');

delay_ms(600);

}

}

2).to transmit as well as read

unsigned int i;

void main()

{

usart_init(2400);

while(1)

{

if(usart_data_ready() )

{

i= usart_read();

usart_write('i');

}

usart_write('A');

usart_write('M');

usart_write('A');

usart_write('N');

delay_ms(600);

}

Thus serial communication has been studied successfully.

Page 54: REPORT ON EMBEDED SYSTEM USING PIC MICROCONTROLLER …report4vr.yolasite.com/resources/main file 1.pdf · e.c.e. department kuk made by: - rajat aggarwal report on embeded system

Training in Embeded system with PIC Microcontroller

Made By:- Rajat Aggarwal

BIBLIOGRAPHY

Wikipedia

MicroC Manuals

www.talkingelectronics.com

www.howstuffworks.com

The Art of Electronics (Book)