Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ISR ( INT1_vect ) {
- static int CURRENT_SCLK = 0;
- static int EEPROM_SCLK = 0;
- static int AVERAGE = 0;
- static int COINCIDENCE_CNT = 0;
- T2_START;
- if (IRDA_SCLK > 5) {
- IRDA_PACKET[IRDA_RECV_CNT] = IRDA_SCLK;
- IRDA_RECV_CNT++;
- IRDA_SCLK = 0;
- if (IRDA_RECV_CNT == 32) {
- EIMSK &= ~(1 << INT1);
- T2_STOP;
- FTIME = millis;
- IRDA_RECV_CNT = 33;
- IRDA_READ_DONE = 1;
- IRDA_RECV_DONE = 1;
- if (!remote_setting_flag) {
- for (int i = 0; i <= 7; i++) {
- COINCIDENCE_CNT = 0;
- for (int j = 0; j <= 31; j++) {
- CURRENT_SCLK = IRDA_PACKET[j];
- EEPROM_SCLK = buttons[i][j];
- if (CURRENT_SCLK >= EEPROM_SCLK) AVERAGE = CURRENT_SCLK - EEPROM_SCLK;
- else if (CURRENT_SCLK <= EEPROM_SCLK) AVERAGE = EEPROM_SCLK - CURRENT_SCLK;
- if (AVERAGE <= 5) {
- COINCIDENCE_CNT++;
- }
- if (COINCIDENCE_CNT == 31) {
- COMMAND_NUM = i;
- break;
- } else {
- COMMAND_NUM = 255;
- }
- }
- if (COMMAND_NUM >= 0 && COMMAND_NUM <= 9) {
- break;
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment