Stephanie News, Dell USB Drivers, Android Devices, Charging, Apple, Nokia Flash File, Samsung Galaxy

Sabtu, 29 September 2012

Counting the number of times pressed of Switch , C program in MPLAB X

Counting the number of times pressed of Switch , C program in MPLAB X - with the rapid development of today's technology we must enrich our knowledge of gadgets, because every day there are many new gadgets that are made with advantages, in blogs Stephanie News we will meriview many gadgets from various brands ranging from the specification and its price .. Now we will discuss first about Counting the number of times pressed of Switch , C program in MPLAB X please see our explanation to finish:

Articles : Counting the number of times pressed of Switch , C program in MPLAB X
full Link : Counting the number of times pressed of Switch , C program in MPLAB X

You can also see our article on:


Counting the number of times pressed of Switch , C program in MPLAB X

In this program we are going to count the number of times a switch pressed,and displaying it on a LCD .. and each time the switch pressed a LED will lighted up.




First create a new project and add a c main file like in the  steps for  Blinking a LED using MPLAB X , PIC16F877A

Components 


1. PIC16F877A micro controller
2. animated LED  
3. A toggle switch
4.16x2 LCD display




Steps in the program

1. define the ports for easy usage 

Defines the control pins of LCD to the 0th,1st and 2nd pin of PORT D
    #define RS RD0
    #define RW RD1
   #define EN RD2
Defines the data port of the  LCD to PORT B
   #define DATA PORTC
Defines switch in the 0th pin of PORT C
   #define S RC0
Defines LED on the 3rd pin of PORT D
   #define L RD3
2. Function declarations .. here we declare 3 functions  and all the 3 functions is for LCD

void LCD_CMD(unsigned int value); //This function is pass the LCD commands
void LCD_DAT(unsigned int value); // this is for pass the DATA to the LCD which is to displayed 
void LCD_INIT(); //this to initialize the LCD
void delay(); // this is to delay the LCD commands 


3. next is main function .. in main function we make 
  •  PORT C as input where we have connected the switch
  •  PORT D as output where we have connected the LED and control pins of LCD
  • PORT B as outout where we have connected DATA pins of LCD
    TRISC  =0x0F;
    TRISD  =0x00;
    TRISB = 0x00;

4. The function LCD_INIT(); is called for initializing the LCD
5. Declared a variable called count, and initialized it to zero
   int count;
   count=0;
6.  we put the LED off 
7. now we are going for a infinite loop by 
    while(1)
    { 
     }
8. In the loop we are checking switch is ON or OFF condition
 if the switch is ON ; LED is on and count is incremented by 1 and display the value of count in LCD 

if the Switch is OFF it wait for the condition when the Switch is ON 

schematic diagram 



full Program
 ###################################################################################
    /*
 * File:   switchcount.c
 * Author: Ebin Ephrem
 
 */

#include<htc.h>
__CONFIG(0x193A);

C
#define RS RD0
#define RW RD1
#define EN RD2
#define DATA PORTB
#define S RC0
#define L RD3

void LCD_CMD(unsigned int value);
void LCD_DAT(unsigned int value);
void LCD_INIT();
void delay();



void main(void)
{
    TRISC  =0x0F;
    TRISD  =0x00;
    TRISB = 0x00;
LCD_INIT();
int count;
count=0;
L=0;

  while(1)
  {
if( S == 1)
       {
    while(S==1);
            L= ~L;
                     count = count+1;
              LCD_CMD(0x01);
        delay ();
    LCD_DAT('0' + (count % 10));
}
       }
 }

void LCD_INIT()
 {
    LCD_CMD(0x01);
    delay ();
    LCD_CMD(0x38);
    delay ();
    LCD_CMD(0x0F);
    delay ();
    LCD_CMD(0x06);
    delay ();
    LCD_CMD(0x0c);
    delay ();

    LCD_CMD(0x80);
    delay ();
}
void LCD_CMD(unsigned int  value)
{
    DATA =  value;
    RS=0;
    RW=0;
    EN=1;
    delay ();
    EN=0;
    delay ();
 }

void LCD_DAT(unsigned int value)
{
    DATA= value ;

    RS=1;
    RW=0;
    EN=1;
    delay ();
    EN=0;
    delay();

}

void delay(void)
{
    int counter = 0;
    for (counter = 0; counter<1000; counter++) {
        ;
    }
}







we feel the information Counting the number of times pressed of Switch , C program in MPLAB X that's all.

hopefully the information Counting the number of times pressed of Switch , C program in MPLAB X that we have conveyed can provide benefits for you and all visitors of this blog, if any criticism and suggestions please comment.

you just read Counting the number of times pressed of Switch , C program in MPLAB X if this article is considered useful and you want to bookmark and share it please use the link https://stephaniefulke.blogspot.com/2012/09/counting-number-of-times-pressed-of.html and what if you want other information look for another page in this blog.

Tag :
Share on Facebook
Share on Twitter
Share on Google+
Tags :

Related : Counting the number of times pressed of Switch , C program in MPLAB X

1 komentar: