Advertisement
elgunhasan

Untitled

Jan 22nd, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.91 KB | None | 0 0
  1. /*
  2. addr 0 = A2 low , A1 low , A0 low 000
  3. addr 1 = A2 low , A1 low , A0 high 001
  4. addr 2 = A2 low , A1 high , A0 low 010
  5. addr 3 = A2 low , A1 high , A0 high 011
  6. addr 4 = A2 high , A1 low , A0 low 100
  7. addr 5 = A2 high , A1 low , A0 high 101
  8. addr 6 = A2 high , A1 high , A0 low 110
  9. addr 7 = A2 high, A1 high, A0 high 111
  10.  
  11. Connect pin #12 of the expander to Analog 5 (i2c clock)
  12. Connect pin #13 of the expander to Analog 4 (i2c data)
  13. Connect pins #15, 16 and 17 of the expander to ground (address selection)
  14. Connect pin #9 of the expander to 5V (power) // operation voltage is 1.8 to 5.5
  15. Connect pin #10 of the expander to ground (common ground)
  16. Connect pin #18 through a ~10kohm resistor to 5V (reset pin, active low)
  17.  
  18. Input #0 is on pin 21 so connect a button or switch from there to ground
  19. */
  20. #include <Adafruit_MCP23017.h>
  21. Adafruit_MCP23017 mcp1; // chip 1
  22. Adafruit_MCP23017 mcp2; // chip 2
  23. Adafruit_MCP23017 mcp3; // chip 3
  24. Adafruit_MCP23017 mcp4; // chip 4
  25. Adafruit_MCP23017 mcp5; // chip 5
  26. Adafruit_MCP23017 mcp6; // chip 6
  27. Adafruit_MCP23017 mcp7; // chip 7
  28. Adafruit_MCP23017 mcp8; // chip 8
  29.  
  30. #define addr1 0
  31. #define addr2 1
  32. #define addr3 2
  33. #define addr4 3
  34. #define addr5 4
  35. #define addr6 5
  36. #define addr7 6
  37. #define addr8 7
  38.  
  39. void setup()
  40. {
  41. Serial.begin(9600);
  42. mcp1.begin(addr1); mcp2.begin(addr2);
  43. mcp3.begin(addr3); mcp4.begin(addr4);
  44. mcp5.begin(addr5); mcp6.begin(addr6);
  45. mcp7.begin(addr7); mcp8.begin(addr8);
  46.  
  47. mcp1.pinMode(0, OUTPUT); mcp1.pinMode(1, OUTPUT);
  48. mcp1.pinMode(2, OUTPUT); mcp1.pinMode(3, OUTPUT);
  49. mcp1.pinMode(4, OUTPUT); mcp1.pinMode(5, OUTPUT);
  50. mcp1.pinMode(6, OUTPUT); mcp1.pinMode(7, OUTPUT);
  51. mcp1.pinMode(8, OUTPUT); mcp1.pinMode(9, OUTPUT);
  52. mcp1.pinMode(10, OUTPUT); mcp1.pinMode(11, OUTPUT);
  53. mcp1.pinMode(12, OUTPUT); mcp1.pinMode(13, OUTPUT);
  54. mcp1.pinMode(14, OUTPUT); mcp1.pinMode(15, OUTPUT);
  55.  
  56. mcp2.pinMode(0, OUTPUT); mcp2.pinMode(1, OUTPUT);
  57. mcp2.pinMode(2, OUTPUT); mcp2.pinMode(3, OUTPUT);
  58. mcp2.pinMode(4, OUTPUT); mcp2.pinMode(5, OUTPUT);
  59. mcp2.pinMode(6, OUTPUT); mcp2.pinMode(7, OUTPUT);
  60. mcp2.pinMode(8, OUTPUT); mcp2.pinMode(9, OUTPUT);
  61. mcp2.pinMode(10, OUTPUT); mcp2.pinMode(11, OUTPUT);
  62. mcp2.pinMode(12, OUTPUT); mcp2.pinMode(13, OUTPUT);
  63. mcp2.pinMode(14, OUTPUT); mcp2.pinMode(15, OUTPUT);
  64.  
  65. mcp3.pinMode(0, OUTPUT); mcp3.pinMode(1, OUTPUT);
  66. mcp3.pinMode(2, OUTPUT); mcp3.pinMode(3, OUTPUT);
  67. mcp3.pinMode(4, OUTPUT); mcp3.pinMode(5, OUTPUT);
  68. mcp3.pinMode(6, OUTPUT); mcp3.pinMode(7, OUTPUT);
  69. mcp3.pinMode(8, OUTPUT); mcp3.pinMode(9, OUTPUT);
  70. mcp3.pinMode(10, OUTPUT); mcp3.pinMode(11, OUTPUT);
  71. mcp3.pinMode(12, OUTPUT); mcp3.pinMode(13, OUTPUT);
  72. mcp3.pinMode(14, OUTPUT); mcp3.pinMode(15, OUTPUT);
  73.  
  74. mcp4.pinMode(0, OUTPUT); mcp4.pinMode(1, OUTPUT);
  75. mcp4.pinMode(2, OUTPUT); mcp4.pinMode(3, OUTPUT);
  76. mcp4.pinMode(4, OUTPUT); mcp4.pinMode(5, OUTPUT);
  77. mcp4.pinMode(6, OUTPUT); mcp4.pinMode(7, OUTPUT);
  78. mcp4.pinMode(8, OUTPUT); mcp4.pinMode(9, OUTPUT);
  79. mcp4.pinMode(10, OUTPUT); mcp4.pinMode(11, OUTPUT);
  80. mcp4.pinMode(12, OUTPUT); mcp4.pinMode(13, OUTPUT);
  81. mcp4.pinMode(14, OUTPUT); mcp4.pinMode(15, OUTPUT);
  82.  
  83. mcp5.pinMode(0, OUTPUT); mcp5.pinMode(1, OUTPUT);
  84. mcp5.pinMode(2, OUTPUT); mcp5.pinMode(3, OUTPUT);
  85. mcp5.pinMode(4, OUTPUT); mcp5.pinMode(5, OUTPUT);
  86. mcp5.pinMode(6, OUTPUT); mcp5.pinMode(7, OUTPUT);
  87. mcp5.pinMode(8, OUTPUT); mcp5.pinMode(9, OUTPUT);
  88. mcp5.pinMode(10, OUTPUT); mcp5.pinMode(11, OUTPUT);
  89. mcp5.pinMode(12, OUTPUT); mcp5.pinMode(13, OUTPUT);
  90. mcp5.pinMode(14, OUTPUT); mcp5.pinMode(15, OUTPUT);
  91.  
  92. mcp6.pinMode(0, OUTPUT); mcp6.pinMode(1, OUTPUT);
  93. mcp6.pinMode(2, OUTPUT); mcp6.pinMode(3, OUTPUT);
  94. mcp6.pinMode(4, OUTPUT); mcp6.pinMode(5, OUTPUT);
  95. mcp6.pinMode(6, OUTPUT); mcp6.pinMode(7, OUTPUT);
  96. mcp6.pinMode(8, OUTPUT); mcp6.pinMode(9, OUTPUT);
  97. mcp6.pinMode(10, OUTPUT); mcp6.pinMode(11, OUTPUT);
  98. mcp6.pinMode(12, OUTPUT); mcp6.pinMode(13, OUTPUT);
  99. mcp6.pinMode(14, OUTPUT); mcp6.pinMode(15, OUTPUT);
  100.  
  101. mcp7.pinMode(0, OUTPUT); mcp7.pinMode(1, OUTPUT);
  102. mcp7.pinMode(2, OUTPUT); mcp7.pinMode(3, OUTPUT);
  103. mcp7.pinMode(4, OUTPUT); mcp7.pinMode(5, OUTPUT);
  104. mcp7.pinMode(6, OUTPUT); mcp7.pinMode(7, OUTPUT);
  105. mcp7.pinMode(8, OUTPUT); mcp7.pinMode(9, OUTPUT);
  106. mcp7.pinMode(10, OUTPUT); mcp7.pinMode(11, OUTPUT);
  107. mcp7.pinMode(12, OUTPUT); mcp7.pinMode(13, OUTPUT);
  108. mcp7.pinMode(14, OUTPUT); mcp7.pinMode(15, OUTPUT);
  109.  
  110. mcp8.pinMode(0, OUTPUT); mcp8.pinMode(1, OUTPUT);
  111. mcp8.pinMode(2, OUTPUT); mcp8.pinMode(3, OUTPUT);
  112. mcp8.pinMode(4, OUTPUT); mcp8.pinMode(5, OUTPUT);
  113. mcp8.pinMode(6, OUTPUT); mcp8.pinMode(7, OUTPUT);
  114. mcp8.pinMode(8, OUTPUT); mcp8.pinMode(9, OUTPUT);
  115. mcp8.pinMode(10, OUTPUT); mcp8.pinMode(11, OUTPUT);
  116. mcp8.pinMode(12, OUTPUT); mcp8.pinMode(13, OUTPUT);
  117. mcp8.pinMode(14, OUTPUT); mcp8.pinMode(15, OUTPUT);
  118. Serial.println("SISTEM ISHE BASHLAYIR");
  119. delay(500);
  120. Serial.println("ZEHMET OLMAZSA BiR REQEM DAXiL EDIN");
  121. }
  122.  
  123. void loop()
  124. {
  125. if (Serial.available() > 0) {
  126. int gelen = Serial.read();
  127. switch (gelen) {
  128. case '1':
  129. mcp1.digitalWrite(0, HIGH);
  130. Serial.println("a1 OK");
  131. delay(100);
  132. mcp1.digitalWrite(0, LOW);
  133. break;
  134. case '2':
  135. mcp2.digitalWrite(0, HIGH);
  136. Serial.println("a2 OK");
  137. delay(100);
  138. mcp2.digitalWrite(0, LOW);
  139. break;
  140. case '3':
  141. mcp6.digitalWrite(0, HIGH);
  142. Serial.println("a3 OK");
  143. delay(100);
  144. mcp6.digitalWrite(0, LOW);
  145. break;
  146. case '10':
  147. mcp7.digitalWrite(0, HIGH);
  148. Serial.println("a4 OK");
  149. delay(100);
  150. mcp7.digitalWrite(0, LOW);
  151. break;
  152. case '11':
  153. mcp8.digitalWrite(0, HIGH);
  154. Serial.println("a5 OK");
  155. delay(100);
  156. mcp8.digitalWrite(0, LOW);
  157. break;
  158. default:
  159. break;
  160. }
  161. }
  162. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement