Académique Documents
Professionnel Documents
Culture Documents
Exp 1: Write a program to first four leds ON and last four leds OFF.
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
Program:
#include<htc.h>
#define _16F877
__CONFIG( HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & WRTEN &
DEBUGDIS & UNPROTECT );
#define XTAL_FREQ 12MHZ
void main()
{
TRISB=0X00;
PORTB=0Xf0;
}
Exp 2: Write a program to blink all leds (ON & OFF all leds)
Program:
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
#include<htc.h>
#define _16F877
__CONFIG( HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & WRTEN &
DEBUGDIS & UNPROTECT );
#define XTAL_FREQ 12MHZ
void delay(unsigned int a);
void main()
{
TRISB=0X00;
PORTB=0X00;
while(1)
{
PORTB=0XFF;
delay(65000);
PORTB=0X00;
delay(65000);
}
}
void delay(unsigned int a)
{
while(a!=0)
{
a--;
}
}
Exp 3: Write a program to ON LEDS with three switches using linear keypad
switching.
Program:
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
#include<htc.h>
#define _16f877
__CONFIG( HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS &WRTEN &
DEBUGDIS & UNPROTECT );
#define XTAL_FREQ 12MHz
#define S1 RD0
#define S2 RD1
#define S3 RD2
#define LED PORTB
void delay(unsigned int a);
void main()
{
TRISB=0X00;
TRISD=0X00;
PORTB=0X00;
S1=1;
S2=1;
S3=1;
while(1)
{
if(S1==0)
{
LED=0XF0;
}
if(S2==0)
{
LED=0x0F;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
}
if(S3==0)
{
LED=0xaa;
}
}
}
void delay(unsigned int a)
{
while(a!=0)
{
a--;
}
}
Ph: 98888-
__CONFIG( HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS &WRTEN &
DEBUGDIS & UNPROTECT );
#define XTAL_FREQ 12MHz
#define t1 RC0
#define t2 RC1
void delay(unsigned int a);
void main()
{
TRISB =0x00;
TRISC =0x00;
PORTB =0XFF;
t1=0;
t2=1;
while(1)
{
PORTB=0XC0;
delay(65000);
PORTB=0Xf9;
delay(65000);
PORTB=0XA4;
delay(65000);
PORTB=0XB0;
delay(65000);
PORTB=0X99;
delay(65000);
PORTB=0X92;
delay(65000);
PORTB=0X82;
delay(65000);
PORTB=0XD8;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
delay(65000);
PORTB=0X80;
delay(65000);
PORTB=0X98;
delay(65000);
}
}
void delay(unsigned int a)
{
while(a!=0)
{
a--;
}
}
Ph: 98888-
Ph: 98888-
delay(1000);
}
}
}
}
}
void delay(unsigned int a)
{
while(a!=0)
{
a--;
}
}
XTAL_FREQ 12MHZ
Ph: 98888-
Ph: 98888-
data('I');
data('O');
data('N');
data('S');
}
}
void initial(void)
{
command(0x01);
command(0x0C);
command(0x3C);
command(0x38);
}
void data(unsigned char b)
{
PORT_LCD=b;
rs=1;
en=1;
delay(300);
en=0;
}
void command(unsigned char a)
{
PORT_LCD=a;
rs=0;
en=1;
delay(300);
en=0;
}
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
XTAL_FREQ 12MHZ
Ph: 98888-
#define en RC0
#define rs RC1
void initial(void);
void command(unsigned char a);
void data(unsigned char b);
void delay(unsigned int c);
void string(unsigned char *d);
void main()
{
TRISD=0x00;
TRISC=0x00;
initial();
while(1)
{
command(0x80);
string("NUMITECH");
command(0xC0);
string("SOLUTIONS");
}
}
void initial(void)
{
command(0x01);
command(0x0C);
command(0x3C);
command(0x38);
}
void data(unsigned char b)
{
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
PORT_LCD=b;
rs=1;
en=1;
delay(300);
en=0;
}
void command(unsigned char a)
{
PORT_LCD=a;
rs=0;
en=1;
delay(300);
en=0;
}
void string (unsigned char *d)
{
while(*d)
{
data(*d++);
}
}
Ph: 98888-
XTAL_FREQ 12MHZ
Ph: 98888-
#define rs RC1
void initial(void);
void command(unsigned char a);
void data(unsigned char b);
void delay(unsigned int c);
void string(unsigned char *d);
void ascii(unsigned int t);
void main()
{
unsigned int a,b,c;
TRISD=0x00;
TRISC=0x00;
initial();
while(1)
{
for(a=0;a<=24;a++)
{
for(b=0;b<=60;b++)
{
for(c=0;c<=60;c++)
{
command(0x80);
string("DIGITAL CLOCK");
command(0xc0);
ascii(a);
command(0xc2);
data(':');
command(0xc3);
ascii(b);
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
command(0xc5);
data(':');
command(0xc6);
ascii(c);
}
}
}
}
}
void initial(void)
{
command(0x01);
command(0x0C);
command(0x3C);
command(0x38);
}
void data(unsigned char b)
{
PORT_LCD=b;
rs=1;
en=1;
delay(300);
en=0;
}
void command(unsigned char a)
{
PORT_LCD=a;
rs=0;
en=1;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
delay(300);
en=0;
}
void string (unsigned char *d)
{
while(*d)
{
data(*d++);
}
}
void ascii(unsigned int t)
{
unsigned char array[]={'0','1','2','3','4','5','6','7','8','9'};
unsigned int a,b;
a=t/10;
data(array[a]);
b=t%10;
data(array[b]);
}
void delay(unsigned int a)
{
while(a!=0)
{
a--;
}
}
Ph: 98888-
Exp 9: Write a program to ON and OFF relay with two switches using linear keypad
switching.
Program:
#include<htc.h>
#define _16f877
__CONFIG(HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & WRTEN &
DEBUGDIS & UNPROTECT);
#define XTAL_FREQ 12MHZ
#define sw1 RB0
#define sw2 RB1
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
Ph: 98888-
#define m1 RD0
#define m2 RD1
void main()
{
TRISB=0X00;
TRISD=0X00;
sw1=1;
sw2=1;
m1=0;
m2=0;
while(1)
{
if(sw1==0)
{
m1=0;
m2=1;
}
if(sw2==0)
{
m1=1;
m2=0;
}
if(sw3==0)
{
m1=0;
m2=0;
}
}
}
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
Ph: 98888-
PORTB=0X00;
PORTD=0X00;
main: while(1)
{
PORTB=0x0f;
a=PORTB;
a|=0xf0;
if(a==0xff)
{
goto main;
}
PORTB=0xef;
a=PORTB;
a|=0xf0;
if(a!=0xff)
{
if(a==0xf7)
{
PORTD=1;
}
if(a==0xfb)
{
PORTD=2;
}
if(a==0xfd)
{
PORTD=3;
}
if(a==0xfe)
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
{
PORTD=4;
}
}
PORTB=0xdf;
a=PORTB;
a|=0xf0;
if(a!=0xff)
{
if(a==0xf7)
{
PORTD=5;
}
if(a==0xfb)
{
PORTD=6;
}
if(a==0xfd)
{
PORTD=7;
}
if(a==0xfe)
{
PORTD=8;
}
}
PORTB=0xbf;
a=PORTB;
a|=0xf0;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
if(a!=0xff)
{
if(a==0xf7)
{
PORTD=9;
}
if(a==0xfb)
{
PORTD=10;
}
if(a==0xfd)
{
PORTD=11;
}
if(a==0xfe)
{
PORTD=12;
}
}
PORTB=0x7f;
a=PORTB;
a|=0xf0;
if(a!=0xff)
{
if(a==0xf7)
{
PORTD=13;
}
if(a==0xfb)
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
{
PORTD=14;
}
if(a==0xfd)
{
PORTD=15;
}
if(a==0xfe)
{
PORTD=16;
}
}
}
}
Exp 12: Write a program to ON LEDS using LDR (light dependent resistor) sensor.
Program:
#include<htc.h>
#define _16f877
__CONFIG(HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & WRTEN &
DEBUGDIS & UNPROTECT);
#define XTAL_FREQ 12MHZ
#define ldr RD0
#define out PORTB
void main()
{
TRISB=0X00;
TRISD0=1;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
out=0X00;
while(1)
{
if(ldr==0)
{
out=0XFF;
}
if(ldr==1)
{
out=0X00;
}
}
}
Ph: 98888-
while(1)
{
if(ir==1)
{
PORTB=0XFF;
}
if(ir==0)
{
PORTB=0X00;
}
}
}
Ph: 98888-
{
if(ir==0)
{
PORTB=0XFF;
}
if(ir==1)
{
PORTB=0X00;
}
}
}
Ph: 98888-
u=read_EEPROM(0);
PORTB=u;
}
}
unsigned char read_EEPROM(unsigned char address)
{
EEADR=address;
EEPGD=0;
RD=1;
return EEDATA;
}
void write_EEPROM(unsigned char address, unsigned char datas)
{
EEADR=address;
EEDATA=datas;
EEPGD=0;
WREN=1;
EECON2=0X55;
EECON2=0XAA;
WR=1;
WREN=0;
while(EEIF==0)
{
}
EEIF=0;
}
Ph: 98888-
Exp 9: Write a program to ON and OFF buzzer with two switches using linear keypad
switching.
Program:
#include<htc.h>
#define _16f877
__CONFIG(HS & WDTDIS & PWRTDIS & BORDIS & LVPDIS & WRTEN &
DEBUGDIS & UNPROTECT);
#define XTAL_FREQ 12MHZ
#define sw1 RB0
#define sw2 RB1
#define buzzer RD0
void main()
{
TRISB=0X00;
TRISD=0X00;
sw1=1;
sw2=1;
Add: Level-4, 23-f , BRS nagar, Ferozepur Road, Ludhiana-12
68485,0161-5088805
Ph: 98888-
buzzer=1;
while(1)
{
if(sw1==0)
{
buzzer=0;
}
if(sw2==0)
{
buzzer=1;
}
}}
Ph: 98888-