Guest User

Untitled

a guest
Apr 21st, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.05 KB | None | 0 0
  1. unsigned int compArrays(void)
  2. {
  3.     unsigned int correct=0;     //number of matching knocks
  4.     unsigned int secret;        //programmed knock value
  5.     unsigned int listen;        //sensed knock value
  6.     unsigned int error;         //allowable percent error
  7.     char k=0;
  8.     secret=knock[PROGRAM][k];
  9.     listen=knock[LISTEN][k];
  10.     while((k<MAX_KNOCKS)&&(secret!=0)&&(listen!=0)) //check individual times and see if they're within 25% error
  11.     {
  12.         error=secret>>4;
  13.         if((secret+error)>knock[LISTEN][k]>(secret-error))  //if within allowable error...
  14.         {
  15.             correct++;      //increase number of correct knock times
  16.         }
  17.         k++;
  18.     }
  19.     if(correct==knockNumber)        //if number of correct knocks match number of knocks...
  20.     {
  21.         char a;
  22.         for(a=0; a<3; a++)      //flash green LED a few times
  23.         {
  24.             GREEN_LED=1;           
  25.             Delay10KTCYx(3);
  26.             GREEN_LED=0;
  27.             Delay10KTCYx(5);
  28.         }
  29.         unlockDoor();           //proceed to unlock door
  30.     }
  31.     else                    //if incorrect...
  32.     {
  33.         char b;
  34.         for(b=0; b<3; b++)      //flash red LED a few times
  35.         {
  36.             RED_LED=1;
  37.             Delay10KTCYx(3);
  38.             RED_LED=0;
  39.             Delay10KTCYx(5);
  40.         }
  41.     }
  42. }
Add Comment
Please, Sign In to add comment