Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
01/13/12 05:50
Read: times


 
#185456 - switch interfacing
Responding to: ???'s previous message
sir
actually i cant understand what and how i write coad for it.sir i am posting my coad here.
and i want to make application only that displaying digites on the seven segment and store it in 93c66 eeprom.
i am working it in steps.my first step is switch interfacing after it eeprom interfacing. so i am posting here cond only for switch interfacing.
plz check thic coed and help me plz

/*****************************************/
/*			 0000 to 9999 Display		 */
/*			 with 4094					 */
/*           12:36 PM 1/10/2012          */
/*****************************************/
#include <reg52.h> 

unsigned char buffer[5];
unsigned int num1,num2,num3,num4,num5,test=0;
unsigned int num=0;

sbit CLK    = P2^1;
sbit DIN    = P2^0;
sbit strobe = P2^2;
											
sbit up    = P1^0;
sbit down  = P1^1;
sbit reset = P1^2;
sbit set   = P1^3;

char code segment[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x39};

void delay(int num)   // timer 							
{ 
	int i;
	for(i=0;i<num;i++)
	{	
		TH0=0xfc;
		TL0=0x67;
	}	 
}


void write_led()
{
     char i,j;

	 for(j=0; j<5; j++)
	 {
	 for(i=0;i<8; i++)
    	 {
           if(buffer[j]&0x80) DIN = 1; 
           else DIN=0; 
           CLK= 1; 
           buffer[j] <<=1; 
           CLK = 0;
	     }
	 }
	strobe = 1;
    ;
    strobe = 0;
}	    

void move_Buffer()
{
    buffer[0] = segment[num1%10];
    buffer[1] = segment[num2%10];
    buffer[2] = segment[num3%10];
    buffer[3] = segment[num4%10];
    buffer[4] = segment[num5%10];
}
								
void updatedisplay()
{
       move_Buffer();
       write_led();
}

void counter()
   {
  if(up==0&&down==1)                                 //check if up pin is pressed
     {
   test++;
        num=test;
	    num1=num%10;
      num=num/10;
        num2=num%10;
      num=num/10;
        num3=num%10;
      num=num/10;
        num4=num%10;
      num5=num/10;
      if(test==99999)
     test=0;
    }
    if(up==1&&down==0)                         //check if down pin is pressed
    {
   test--;
        num=test;
		num1=num%10;
      num=num/10;
        num2=num%10;
      num=num/10;
        num3=num%10;
      num=num/10;
        num4=num%10;
      num5=num/10;
     if(test==0)
     test=99999;
  }
}
  
void re()                                             // reset display
{
  if (reset==0)
  num1=num2=num3=num4=num5=0;
 }

void timer_isr(void) interrupt 1 using 1
{
    counter();
	re();
	delay(10000);
    updatedisplay();
}

void main()
{
  TMOD = 0x01;
  EA   = 1;
  ET0  = 1;
  TR0  = 1;
  up   = 1;
  down = 1;
  reset= 1;
  set  = 1;

}




List of 44 messages in thread
TopicAuthorDate
switch interfacing            01/01/70 00:00      
   What?            01/01/70 00:00      
      switch interfacing            01/01/70 00:00      
         The 7-segment digits will not handle switches            01/01/70 00:00      
   Perhaps this may be useful to you            01/01/70 00:00      
      4 buttons - not full keypad            01/01/70 00:00      
         switch interfacing            01/01/70 00:00      
            That is called edit mode            01/01/70 00:00      
               switch interfacing            01/01/70 00:00      
                  You need to study some examples            01/01/70 00:00      
                     switch interfacing            01/01/70 00:00      
                  Details details - and where is debounce/repeat handling?            01/01/70 00:00      
                     switch interfacing            01/01/70 00:00      
            Why should this be a problem??            01/01/70 00:00      
            interfacing your switches has nothing to do with LED's            01/01/70 00:00      
   MUX LED AS O/P PIN            01/01/70 00:00      
      Switch interfacing            01/01/70 00:00      
         divide and conquer            01/01/70 00:00      
         simplified step-by-step way to post your schematic            01/01/70 00:00      
            remember            01/01/70 00:00      
               ? Not Muxing ?            01/01/70 00:00      
   switch interfacing            01/01/70 00:00      
      You need lots of resistors            01/01/70 00:00      
         (Back to) Basics            01/01/70 00:00      
            multiplex 5 digits            01/01/70 00:00      
               Don't think anyone would want 1:35 degenerate "multiplexing"            01/01/70 00:00      
                  Have I done the sums wrong?            01/01/70 00:00      
                     No but multiplexing requires few driver lines            01/01/70 00:00      
                        You MUST have digit drvers            01/01/70 00:00      
                           You missed '4094 OE+PWM for luminocity            01/01/70 00:00      
               No multiplexing needed...            01/01/70 00:00      
                  switch interfacing            01/01/70 00:00      
                     What help?            01/01/70 00:00      
                     how?            01/01/70 00:00      
                     Ah, a homework, right?            01/01/70 00:00      
                        switch interfacing            01/01/70 00:00      
                           language?            01/01/70 00:00      
                           i have no logical idea how i write code            01/01/70 00:00      
                           You need...            01/01/70 00:00      
                              Making a seven segment display blink            01/01/70 00:00      
                                 The 4094 chip has an OE pin            01/01/70 00:00      
                              switch interfacing            01/01/70 00:00      
   switch interfacing            01/01/70 00:00      
      would you provide some feedback ?            01/01/70 00:00      

Back to Subject List