Advertisement
Guest User

Untitled

a guest
Sep 28th, 2016
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.23 KB | None | 0 0
  1. void setup() {
  2. // initilizing port D
  3. DDRD = B11111111; // all D port pins as output
  4. DDRC = B00000000; // all C port pins as input
  5. PORTC=B00001111; // switch ON pullup resistors (C0-C3)
  6.  
  7. }
  8.  
  9. void loop() {
  10.  
  11. byte my_var;
  12.  
  13.  
  14. my_var=PINC & B00001111; // Read C port pins to variable
  15.  
  16.  
  17. if(my_var==B00001110){
  18. delay(1000);
  19. sevenseg(10);
  20. };
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32. // Key 1
  33. if (my_var==B00001101) {
  34.  
  35. sevenseg(3);
  36.  
  37. }; // Key 2
  38. if (my_var==B00001011) {
  39.  
  40. sevenseg(2);
  41.  
  42. }; // Key 2
  43. if (my_var==B00000111) {
  44.  
  45. sevenseg(1);
  46.  
  47. }; // Key 2
  48.  
  49. }
  50.  
  51.  
  52.  
  53. //sevenseg aliohjelma antaa sulkuihin sijoitetun arvon
  54. void sevenseg(char N){
  55.  
  56. char D[22] = {
  57. ~B00111111, //0
  58. ~B00000110, //1
  59. ~B01011011, //2
  60. ~B01001111, //3
  61. ~B01100110, //4
  62. ~B01101101, //5
  63. ~B01111101, //6
  64. ~B00000111, //7
  65. ~B01111111, //8
  66. ~B01101111, //9
  67. ~B01110111, //A
  68. ~B01111111, //B
  69. ~B00111001, //C
  70. ~B00111111, //D
  71. ~B01111001, //E
  72. ~B01110001, //F
  73. ~B00100000, //viiva
  74. ~B00000001, //viiva
  75. ~B00000010, //viiva
  76. ~B00000100, //viiva
  77. ~B00001000, //viiva
  78. ~B00010000, //viiva
  79. };
  80.  
  81. PORTD = D[N];
  82.  
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement