Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.22 KB | None | 0 0
  1. int redPIN = 11;
  2. int greenPIN = 10;
  3. int bluePIN = 9;
  4. int tx = 1;
  5. int rx = 0;
  6. int rainbow = 1;
  7. int r = 0;
  8. int b = 0;
  9. int g = 255;
  10. int i = 0;
  11. char inSerial[15];
  12. double brightness = 1.0;
  13.  
  14. void setup() {
  15. Serial.begin(9600);
  16. pinMode(redPIN, OUTPUT);
  17. pinMode(bluePIN, OUTPUT);
  18. pinMode(greenPIN, OUTPUT);
  19. pinMode(tx, OUTPUT);
  20. pinMode(rx, INPUT);
  21. allpinslow();
  22. Serial.print("allpinslow function in setup?");
  23. }
  24.  
  25. void loop() {
  26. int i = 0;
  27. int m = 0;
  28. delay(100);
  29. if (Serial.available() > 0)
  30. {
  31. while (Serial.available() > 0)
  32. {
  33. inSerial[i] = Serial.read();
  34. i++;
  35. }
  36. inSerial[i] = '\0';
  37. Check_Protocol(inSerial);
  38. }
  39. }
  40.  
  41. void allpinslow()
  42. {
  43. digitalWrite(redPIN, LOW);
  44. digitalWrite(bluePIN, LOW);
  45. digitalWrite(greenPIN, LOW);
  46. }
  47.  
  48. void Check_Protocol(char inStr[])
  49. {
  50. multiColourLED(inStr);
  51. greenLED(inStr);
  52. redLED(inStr);
  53. blueLED(inStr);
  54. whiteLED(inStr);
  55. yellowLED(inStr);
  56. purpleLED(inStr);
  57. goldLED(inStr);
  58. pinkLED(inStr);
  59. turnOff(inStr);
  60. fade(inStr);
  61. }
  62.  
  63. void greenLED(char inStr[])
  64. {
  65. int m = 0;
  66. if (!strcmp(inStr, "green"))
  67. {
  68. allpinslow();
  69. digitalWrite(greenPIN, HIGH);
  70. Serial.println("Green ON");
  71. for (m = 0; m < 11; m++)
  72. {
  73. inStr[m] = 0;
  74. }
  75. i = 0;
  76. }
  77. }
  78.  
  79. void redLED(char inStr[])
  80. {
  81. int m = 0;
  82. if (!strcmp(inStr, "red"))
  83. {
  84. allpinslow();
  85. digitalWrite(redPIN, HIGH);
  86. Serial.println("Red ON");
  87. for (m = 0; m < 11; m++)
  88. {
  89. inStr[m] = 0;
  90. }
  91. i = 0;
  92. }
  93. }
  94.  
  95. void blueLED(char inStr[])
  96. {
  97. int m = 0;
  98. if (!strcmp(inStr, "blue"))
  99. {
  100. allpinslow();
  101. analogWrite(bluePIN, 255);
  102. Serial.println("Blue ON");
  103. for (m = 0; m < 11; m++)
  104. {
  105. inStr[m] = 0;
  106. }
  107. i = 0;
  108. }
  109. }
  110.  
  111. void turnOff(char inStr[])
  112. {
  113. int m = 0;
  114. if (!strcmp(inStr, "off"))
  115. {
  116. allpinslow();
  117. Serial.println("Off");
  118. for (m = 0; m < 11; m++)
  119. {
  120. inStr[m] = 0;
  121. }
  122. i = 0;
  123. }
  124. }
  125.  
  126. void multiColourLED(char inStr[])
  127. {
  128. int m = 0;
  129. if (!strcmp(inStr, "rainbow"))
  130. {
  131. allpinslow();
  132. while (!strcmp(inStr, "rainbow"))
  133. {
  134. multicolour(rainbow);
  135. rainbow++;
  136. if (rainbow > 3) rainbow = 1;
  137. check(inStr);
  138. i = 0;
  139. Serial.println("Rainbow ON");
  140. }
  141. }
  142. }
  143.  
  144. void yellowLED(char inStr[])
  145. {
  146. int m = 0;
  147. if (!strcmp(inStr, "yellow"))
  148. {
  149. allpinslow();
  150. analogWrite(redPIN, 255);
  151. analogWrite(greenPIN, 100);
  152. analogWrite(bluePIN, 0);
  153. Serial.println("Yellow ON");
  154. for (m = 0; m < 11; m++)
  155. {
  156. inStr[m] = 0;
  157. }
  158. i = 0;
  159. }
  160. }
  161.  
  162. void goldLED(char inStr[])
  163. {
  164. int m = 0;
  165. if (!strcmp(inStr, "gold"))
  166. {
  167. allpinslow();
  168. analogWrite(redPIN, 255);
  169. analogWrite(greenPIN, 75);
  170. analogWrite(bluePIN, 0);
  171. Serial.println("Gold ON");
  172. for (m = 0; m < 11; m++)
  173. {
  174. inStr[m] = 0;
  175. }
  176. i = 0;
  177. }
  178. }
  179.  
  180. void pinkLED(char inStr[])
  181. {
  182. int m = 0;
  183. if (!strcmp(inStr, "pink"))
  184. {
  185. allpinslow();
  186. analogWrite(redPIN, 255);
  187. analogWrite(greenPIN, 50);
  188. analogWrite(bluePIN, 100);
  189. Serial.println("Pink ON");
  190. for (m = 0; m < 11; m++)
  191. {
  192. inStr[m] = 0;
  193. }
  194. i = 0;
  195. }
  196. }
  197.  
  198. void whiteLED(char inStr[])
  199. {
  200. int m = 0;
  201. if (!strcmp(inStr, "white"))
  202. {
  203. allpinslow();
  204. analogWrite(redPIN, 255);
  205. analogWrite(greenPIN, 255);
  206. analogWrite(bluePIN, 255);
  207. Serial.println("White ON");
  208. for (m = 0; m < 11; m++)
  209. {
  210. inStr[m] = 0;
  211. }
  212. i = 0;
  213. }
  214. }
  215.  
  216. void purpleLED(char inStr[])
  217. {
  218. int m = 0;
  219. if (!strcmp(inStr, "purple"))
  220. {
  221. allpinslow();
  222. analogWrite(redPIN, 128);
  223. analogWrite(greenPIN, 0);
  224. analogWrite(bluePIN, 128);
  225. Serial.println("Purple ON");
  226. for (m = 0; m < 11; m++)
  227. {
  228. inStr[m] = 0;
  229. }
  230. i = 0;
  231. }
  232. }
  233.  
  234. void multicolour(int rainbow)
  235. {
  236. if (rainbow == 1)
  237. {
  238. r = 0;
  239. b = 0;
  240. g = 255;
  241. for (r = 0; r < 255; r++)
  242. {
  243. g--;
  244. analogWrite(redPIN, r);
  245. analogWrite(greenPIN, g);
  246. delay(5);
  247. }
  248. }
  249. if (rainbow == 2)
  250. {
  251. r = 255;
  252. b = 0;
  253. g = 0;
  254. for (b = 0; b < 255; b++)
  255. {
  256. r--;
  257. analogWrite(bluePIN, b);
  258. analogWrite(redPIN, r);
  259. delay(5);
  260. }
  261. }
  262. if (rainbow == 3)
  263. {
  264. r = 0;
  265. b = 255;
  266. g = 0;
  267. for (g = 0; g < 255; g++)
  268. {
  269. b--;
  270. analogWrite(greenPIN, g);
  271. analogWrite(bluePIN, b);
  272. delay(5);
  273. }
  274. }
  275. }
  276.  
  277. void check(char inStr[])
  278. {
  279. int m = 0;
  280. if (Serial.available() > 0)
  281. {
  282. while (Serial.available() > 0)
  283. {
  284. inStr[m] = Serial.read();
  285. m++;
  286. }
  287. inStr[m] = '\0';
  288. }
  289. }
  290.  
  291. void fade(char inStr[])
  292. {
  293. int m = 0;
  294. if (!strcmp(inStr, "fade"))
  295. {
  296. for (m = 0; m < 4; m++)
  297. {
  298. inStr[m] = 0;
  299. }
  300. Serial.println("Fade ON1");
  301. boolean recieved = false;
  302. while ((!recieved))
  303. {
  304. if (Serial.available() > 0)
  305. {
  306. while (Serial.available() > 0)
  307. {
  308. brightness = Serial.read();
  309. recieved = true;
  310. }
  311. Serial.println("Brightness is");
  312. Serial.println(brightness);
  313. }
  314. }
  315. }
  316. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement