Advertisement
DarioCas

Arduino Software Patrick

Apr 27th, 2021
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.25 KB | None | 0 0
  1. #define KNOPF 11
  2. #define SUMMER 10
  3. #define LED1 2
  4. #define LED2 3
  5. #define LED3 4
  6. #define LED4 5
  7. #define LED5 6
  8. #define LED6 7
  9. #define LED7 8
  10. #define LED8 9
  11. #define A 256
  12. #define B 288
  13. #define C 320
  14. #define D 341
  15. #define E 384
  16. #define F 427
  17. #define G 480
  18. #define H 512
  19. typedef struct
  20. {
  21. char act;
  22. char edge;
  23. char edge_pos;
  24. char old;
  25. } tst_t;
  26.  
  27.  
  28. void setup()
  29. {
  30. pinMode(2, OUTPUT);
  31. pinMode(3, OUTPUT);
  32. pinMode(4, OUTPUT);
  33. pinMode(5, OUTPUT);
  34. pinMode(6, OUTPUT);
  35. pinMode(7, OUTPUT);
  36. pinMode(8, OUTPUT);
  37. pinMode(9, OUTPUT);
  38. pinMode(10, OUTPUT);
  39. pinMode(11, INPUT);
  40.  
  41. digitalWrite(1, HIGH);
  42. digitalWrite(2, HIGH);
  43. digitalWrite(3, HIGH);
  44. digitalWrite(4, HIGH);
  45. digitalWrite(5, HIGH);
  46. digitalWrite(6, HIGH);
  47. digitalWrite(7, HIGH);
  48. digitalWrite(8, HIGH);
  49. digitalWrite(9, HIGH);
  50. }
  51.  
  52.  
  53.  
  54. char started = 0;
  55. char modus = 1;
  56.  
  57. tst_t tst = {0};
  58.  
  59.  
  60. void loop()
  61. {
  62. tst.act = digitalRead(KNOPF);
  63.  
  64. if(tst.act == 1) started = 1;
  65.  
  66. if(started == 1)
  67. {
  68. switch(modus)
  69. {
  70. /* case 1:
  71.  
  72. digitalWrite(LED1, LOW);
  73. tone(SUMMER, A);
  74. delay(250);
  75. unterbruch(20);
  76. tone(SUMMER, B);
  77. delay(250);
  78. unterbruch(20);
  79. tone(SUMMER, C);
  80. delay(250);
  81. unterbruch(20);
  82. tone(SUMMER, D);
  83. delay(250);
  84. unterbruch(20);
  85. tone(SUMMER, E);
  86. delay(500);
  87. unterbruch(20);
  88. tone(SUMMER, E);
  89. delay(500);
  90. unterbruch(20);
  91. tone(SUMMER, F);
  92. delay(250);
  93. unterbruch(20);
  94. tone(SUMMER, F);
  95. delay(250);
  96. unterbruch(20);
  97. tone(SUMMER, F);
  98. delay(250);
  99. unterbruch(20);
  100. tone(SUMMER, F);
  101. delay(250);
  102. unterbruch(20);
  103. tone(SUMMER, E);
  104. delay(750);
  105. unterbruch(200);
  106. tone(SUMMER, F);
  107. delay(250);
  108. unterbruch(20);
  109. tone(SUMMER, F);
  110. delay(250);
  111. unterbruch(20);
  112. tone(SUMMER, F);
  113. delay(250);
  114. unterbruch(20);
  115. tone(SUMMER, F);
  116. delay(250);
  117. unterbruch(20);
  118. tone(SUMMER, E);
  119. delay(750);
  120. unterbruch(200);
  121. tone(SUMMER, D);
  122. delay(250);
  123. unterbruch(20);
  124. tone(SUMMER, D);
  125. delay(250);
  126. unterbruch(20);
  127. tone(SUMMER, D);
  128. delay(250);
  129. unterbruch(20);
  130. tone(SUMMER, D);
  131. delay(250);
  132. unterbruch(20);
  133. tone(SUMMER, C);
  134. delay(500);
  135. unterbruch(20);
  136. tone(SUMMER, C);
  137. delay(500);
  138. unterbruch(20);
  139. tone(SUMMER, B);
  140. delay(250);
  141. unterbruch(20);
  142. tone(SUMMER, B);
  143. delay(250);
  144. unterbruch(20);
  145. tone(SUMMER, B);
  146. delay(250);
  147. unterbruch(20);
  148. tone(SUMMER, B);
  149. delay(250);
  150. unterbruch(20);
  151. tone(SUMMER, A);
  152. delay(750);
  153. unterbruch(1000);
  154. modus++;
  155. break;
  156.  
  157. case 2:
  158. digitalWrite(LED2, LOW);
  159. tone(SUMMER, A);
  160. delay(500);
  161. unterbruch(30);
  162. tone(SUMMER, A);
  163. delay(500);
  164. unterbruch(30);
  165.  
  166. tone(SUMMER, B);
  167. delay(1200);
  168. unterbruch(30);
  169.  
  170. tone(SUMMER, A);
  171. delay(1200);
  172. unterbruch(30);
  173.  
  174. tone(SUMMER,D);
  175. delay(1200);
  176. unterbruch(30);
  177.  
  178. tone(SUMMER,C);
  179. delay(2000);
  180. unterbruch(30);
  181.  
  182. tone(SUMMER, A);
  183. delay(500);
  184. unterbruch(30);
  185.  
  186. tone(SUMMER, A);
  187. delay(500);
  188. unterbruch(30);
  189.  
  190. tone(SUMMER, B);
  191. delay(1200);
  192. unterbruch(30);
  193.  
  194. tone(SUMMER, A);
  195. delay(1200);
  196. unterbruch(30);
  197.  
  198. tone(SUMMER, E);
  199. delay(500);
  200. unterbruch(30);
  201.  
  202. tone(SUMMER, D);
  203. delay(2000);
  204. unterbruch(30);
  205.  
  206. tone(SUMMER, A);
  207. delay(500);
  208. unterbruch(30);
  209.  
  210. tone(SUMMER, A);
  211. delay(500);
  212. unterbruch(30);
  213.  
  214. tone(SUMMER, H);
  215. delay(1200);
  216. unterbruch(30);
  217.  
  218. tone(SUMMER, F);
  219. delay(1200);
  220. unterbruch(30);
  221.  
  222. tone(SUMMER, D);
  223. delay(1200);
  224. unterbruch(30);
  225.  
  226. tone(SUMMER, C);
  227. delay(1200);
  228. unterbruch(30);
  229.  
  230. tone(SUMMER, B);
  231. delay(2000);
  232. unterbruch(30);
  233.  
  234. tone(SUMMER, G);
  235. delay(500);
  236. unterbruch(30);
  237.  
  238. tone(SUMMER, G);
  239. delay(500);
  240. unterbruch(30);
  241.  
  242. tone(SUMMER, F);
  243. delay(1200);
  244. unterbruch(30);
  245.  
  246. tone(SUMMER, D);
  247. delay(1200);
  248. unterbruch(30);
  249.  
  250. tone(SUMMER, E);
  251. delay(1200);
  252. unterbruch(30);
  253.  
  254. tone(SUMMER, D);
  255. delay(1200);
  256. unterbruch(30);
  257. noTone(SUMMER);
  258. modus++;
  259. break;
  260. */
  261.  
  262. case 1:
  263. digitalWrite(LED3, HIGH);
  264.  
  265. tone(SUMMER, H);
  266. delay(200);
  267. unterbruch(1);
  268.  
  269.  
  270. tone(SUMMER, F);
  271. delay(200);
  272. unterbruch(1);
  273.  
  274.  
  275. tone(SUMMER, G);
  276. delay(200);
  277. unterbruch(1);
  278.  
  279.  
  280. tone(SUMMER, E);
  281. delay(200);
  282. unterbruch(1);
  283.  
  284.  
  285. tone(SUMMER, F);
  286. delay(200);
  287. unterbruch(1);
  288.  
  289.  
  290. tone(SUMMER, D);
  291. delay(200);
  292. unterbruch(1);
  293.  
  294.  
  295. tone(SUMMER, E);
  296. delay(200);
  297. unterbruch(1);
  298.  
  299.  
  300. tone(SUMMER, C);
  301. delay(200);
  302. unterbruch(1);
  303.  
  304. tone(SUMMER, H);
  305. delay(200);
  306. unterbruch(1);
  307.  
  308. tone(SUMMER, H);
  309. delay(200);
  310. unterbruch(1);
  311.  
  312.  
  313.  
  314.  
  315.  
  316. default:
  317. modus = 1;
  318. digitalWrite(LED1, HIGH);
  319. digitalWrite(LED2, HIGH);
  320. digitalWrite(LED3,HIGH);
  321. delay(500);
  322. break;
  323. }
  324. }
  325.  
  326. }
  327. void unterbruch(short warten)
  328. {
  329. tst.act = digitalRead(KNOPF);
  330. tst.edge = tst.act & tst.old;
  331. tst.edge_pos = tst.edge & tst.act;
  332. tst.old = tst.act;
  333.  
  334. if(tst.edge_pos == 1) started = 0;
  335.  
  336. noTone(SUMMER);
  337. delay(warten);
  338.  
  339. }
  340.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement