bambangSud

Contoh potongan akses PIN <C>

Mar 4th, 2014
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.33 KB | None | 0 0
  1. *****************************************************/
  2. eeprom char password[]="123456#";
  3. #include <mega8515.h>
  4.  
  5. // Alphanumeric LCD Module functions
  6. #include <alcd.h>
  7.  
  8. // Standard Input/Output functions
  9. #include <stdio.h>
  10. #include <delay.h>
  11. int status,sms_mark;
  12. char pin_buff[10];
  13. char key,pass_count,pass[10];
  14.  
  15. void read_pin(void);
  16. void pass_(void);
  17.  
  18.  
  19.  
  20. void main(void)
  21. //........
  22. //.......
  23.  
  24. while (1)
  25. {
  26. // Place your code here
  27.  
  28. lcd_gotoxy(0,1);
  29. //lcd_putchar(i+48);
  30. if(PINC.2==0){
  31. status=0;
  32. beep();
  33. delay_ms(100);
  34. beep();
  35. while(PINC.2==0){}
  36. delay_ms(100);
  37. while(PINC.2==0){}
  38.  
  39. PORTC.1=0;// solenoid off
  40. sms_mark=1;
  41. lcd_clear();
  42. lcd_puts("Alarm non aktif");
  43. }
  44.  
  45. if(PINC.3==0){
  46. lcd_clear();
  47.  
  48. beep();
  49. while(PINC.3==0){}
  50. delay_ms(100);
  51. while(PINC.3==0){}
  52. status=1;
  53. delay_ms(20);
  54. lcd_puts("Alarm aktif");
  55. }
  56.  
  57. if(status && PINC.4==1){
  58. beep();
  59. PORTC.1=1;// solenoid on
  60. if(sms_mark==1) {
  61. sms_tx("089656644591","Gawat, ada maling masuk!");
  62. lcd_puts("Alarm aktif");
  63. sms_mark=0;
  64.  
  65. }
  66. }
  67. read_pin(); // panggil rutin
  68. //pass_();
  69. } //--------- loop
  70. } //============ end
  71.  
  72. void read_pin(void)
  73. {
  74.  
  75. key=get_key();
  76. if(key != '-')
  77. {
  78. lcd_putchar(key);
  79. if(key=='#'){
  80. while(1){
  81. key_up();
  82. key=get_key();
  83. if(key=='#'){
  84. lcd_clear();
  85. status=1;
  86. sms_mark=1;
  87. delay_ms(20);
  88. lcd_puts("Alarm aktif");
  89. beep();
  90. break;
  91. }
  92. else
  93. if(key=='*')break;
  94. }
  95. }
  96. else if(key!='-'){
  97. pass_count=0;
  98. pass[pass_count++]=key;
  99. pass_();
  100. key_up();
  101. }
  102.  
  103.  
  104. }
  105. key_up();
  106.  
  107. }
  108.  
  109. //================
  110. void pass_(void)
  111. {
  112. //char key,pass_count,pass[10];
  113. key_up();
  114. while(1){
  115. key=get_key();
  116. if(key!='-'){
  117. pass[pass_count++]=key;
  118. key_up();
  119. if(key=='#') break;
  120. }
  121. //
  122. }
  123.  
  124. pass_count=0;
  125. while(1){
  126. if(password[pass_count] != pass[pass_count]){
  127. lcd_gotoxy(0,1);
  128. lcd_puts("Password error ");
  129. delay_ms(2000);
  130. lcd_gotoxy(0,1);
  131. lcd_puts(" ");
  132. break;
  133. }
  134. if(password[pass_count]=='#'){
  135. status=0;
  136. PORTC.1=0;// solenoid off
  137. sms_mark=1;
  138. lcd_clear();
  139. lcd_puts("Alarm non aktif");
  140. beep();
  141. delay_ms(30);
  142. beep();
  143. break;
  144. }
  145. pass_count++;
  146. }
  147.  
  148.  
  149. }
Advertisement
Add Comment
Please, Sign In to add comment