Advertisement
Guest User

Untitled

a guest
Nov 27th, 2014
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. unsigned char odczytaj_klawiature()
  2. {
  3. unsigned char result = 0xFF;
  4. unsigned char i, j;
  5.  
  6. PORTA = 0xFF;
  7. for(i = 0; i < 4; i++)
  8. {
  9. DDRA = (1<<i+4);
  10. PORTA = ~(1<<i+4);
  11. for(j = 0; j < 4; j++)
  12. {
  13. _delay_ms(2);
  14. if(!(PINA & (1<<j)))
  15. {
  16. _delay_ms(2);
  17. result = PINA;
  18. }
  19. }
  20.  
  21. }
  22. switch(result)
  23. {
  24. case 0b11101110:
  25. result=1; break;
  26. case 0b11011110:
  27. result=2;break;
  28. case 0b10111110:
  29. result=3; break;
  30. case 0b01111110:
  31. result=4; break;
  32. case 0b11101101:
  33. result=5; break;
  34. case 0b11011101:
  35. result=6; break;
  36. case 0b10111101:
  37. result=7; break;
  38. case 0b01111101:
  39. result=8; break;
  40. case 0b11101011:
  41. result=9; break;
  42. case 0b11011011:
  43. result=10; break;
  44. case 0b10111011:
  45. result=11; break;
  46. case 0b01111011:
  47. result=12; break;
  48. case 0b11100111:
  49. result=13; break;
  50. case 0b11010111:
  51. result=14; break;
  52. case 0b10110111:
  53. result=15; break;
  54. case 0b01110111:
  55. result=16; break;
  56. case 0b11111111:
  57. result=0; break;
  58. default:
  59. result=31; break;
  60. }
  61. return result;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement