Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * secret_knock_lib.h
- *
- * Created on: 03/12/2013
- * Author: Filipe Ribeiro
- */
- #ifndef SECRET_KNOCK_LIB_H_
- #define SECRET_KNOCK_LIB_H_
- #include "msp430g2553.h"
- // DEFINITIONS
- #define TIMER_A_0 1
- #define TIMER_A_1 2
- #define RECORD_MODE_ON 1
- #define RECORD_MODE_OFF 2
- // knock configuration
- #define KNOCK_TOLERANCE 2000 // max error tolerance
- #define TOTAL_TOLERANCE 10000 // max error tolerance
- #define KNOCK_MAX_SEQ 20 // max number of knocks
- #define KNOCK_ELAPSE_TIME 3000 // max knock interval in ms
- #define KNOCK_NORM_INTERVAL 10000 // normalized max knock interval
- #define KNOCK_OK 1
- #define KNOCK_NOT_OK 2
- #define PORT1_DIR BIT6+BIT4+BIT0
- #define PORT2_DIR 0
- #define GREEN_LED_ON (P1OUT |= BIT6)
- #define YELLOW_LED_ON (P1OUT |= BIT4)
- #define RED_LED_ON (P1OUT |= BIT0)
- #define GREEN_LED_OFF (P1OUT &= ~BIT6)
- #define YELLOW_LED_OFF (P1OUT &= ~BIT4)
- #define RED_LED_OFF (P1OUT &= ~BIT0)
- #define GREEN_LED_TOGGLE (P1OUT ^= BIT6)
- #define PUSH_BUTTON (BIT3)
- #define CHECK_PUSH_BUTTON (P1IN & BIT3)
- #define PIEZO_PIN BIT5
- #define CHECK_PIEZO_PIN (P1IN & BIT5)
- #define MOTOR_ON (P2OUT |= BIT3)
- #define MOTOR_OFF (P2OUT &= ~BIT3)
- // GLOBAL VARIABLES
- extern unsigned char recordMode;
- extern unsigned char stupidUser;
- extern unsigned long int elapseTime;
- extern unsigned long int knockBuffer[KNOCK_MAX_SEQ];
- extern unsigned long int passwordBuffer[KNOCK_MAX_SEQ];
- extern unsigned char passwordLength;
- extern unsigned char knockIndex;
- // FUNCTION PROTOTYPES
- void portInit(void);
- void timerAInit(unsigned char timerAMask);
- unsigned char passwordCheck(void);
- void passwordRecord(void);
- void knockNormalize(void);
- void knockReset(void);
- void knockInit(void);
- #endif /* SECRET_KNOCK_LIB_H_ */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement