Algumas Dúvidas Rápidas

OPA!! consegui =), peguei uma library de password =) Arduino Playground - HomePage

/*
||  Simple Password Entry Using Matrix Keypad
||  4/5/2012 Updates Nathan Sobieck: Nathan@Sobisource.com
||
*/


//* is to validate password   
//# is to reset password attempt

/////////////////////////////////////////////////////////////////

#include <Password.h> //http://www.arduino.cc/playground/uploads/Code/Password.zip
#include <Keypad.h> //http://www.arduino.cc/playground/uploads/Code/Keypad.zip
#include <LiquidCrystal.h>
#include <Servo.h>

Servo motor;
Password password = Password( "1234" ); // Password de Acesso
const byte ROWS = 4; // 4 linhas no teclado
const byte COLS = 3; // 3 colunas no teclado
// Define o resultado ao clicar em cada um dos botões
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};

byte rowPins[ROWS] = {9, 8, 7, 6}; //pinos das linhas do teclado
byte colPins[COLS] = {10, 13, 0,}; //pinos das colunas dos teclados
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // numero das portas do lcd


// Create the Keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup(){

  lcd.begin(16,2); // tamanho do lcd
  keypad.addEventListener(keypadEvent); //add an event listener for this keypad
  motor.attach(1); // pino onde está o servo
}

void loop(){
  keypad.getKey();    // mapear tecla apertada
}

//take care of some special events
void keypadEvent(KeypadEvent eKey){
  switch (keypad.getState()){
    case PRESSED:
	
	lcd.println(eKey);
	switch (eKey){
	  case '*': checkPassword(); break;
	  case '#': password.reset(); break;
	  default: password.append(eKey);
     }
  }

}

void checkPassword(){          // evento de checar o password
  if (password.evaluate()){
    lcd.clear();
    lcd.println("Success");
    motor.write(79);
    //Código caso funcione
  }else{
    lcd.clear();
    lcd.println("Wrong");
    password.reset();
    delay (1800);
    motor.write(0);
    lcd.clear();
   
    // Código caso falhe
  }
}

o servo tá movendo certinho =), problema que no proteus liguei ele direto na entrada 1 sem nada a mais...,
e também nossa motor + lcd + keypad = todas as 14 portas digitais foram ocupadas =(, queria por outro motor agora ferro...
... achei esse material aqui : Arduino Playground - LearningShiftOut
ele utiliza um chip 74HC595 de deslocamento... alguém utiliza ele?