Are you a regular stikked user? Signup so you can keep track of your pastes!

Random Keypad Game v1.01

By yror10 (Verified), 6 Months ago, written in C.
URL http://stikked.com/view/18434445
  1. #include <Keypad.h>
  2. long ra = 0; //random var for keypad
  3.  
  4. int converted;
  5.  
  6. int g =  22;// led segments
  7. int f =  23;
  8. int a =  24;
  9. int b =  25;
  10. int e =  26;
  11. int d =  27;
  12. int c =  28;
  13. int point = 29;
  14.  
  15. const byte ROWS = 4; //four rows
  16. const byte COLS = 3; //three columns
  17. char keys[ROWS][COLS] = {
  18.         {'1','2','3'},
  19.                 {'4','5','6'},
  20.                 {'7','8','9'},
  21.                 {'#','0','*'}
  22. };
  23. //connect to the row pinouts of the keypad
  24. byte rowPins[ROWS] = {7, 2, 3, 5};
  25. byte colPins[COLS] = {6, 8, 4};
  26.  
  27. Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
  28.  
  29. void setup(){
  30.         pinMode(g, OUTPUT);    
  31.         pinMode(f, OUTPUT);    
  32.         pinMode(a, OUTPUT);    
  33.         pinMode(b, OUTPUT);    
  34.         pinMode(e, OUTPUT);    
  35.         pinMode(d, OUTPUT);    
  36.         pinMode(c, OUTPUT);    
  37.         pinMode(point, OUTPUT);
  38.         ledalloff();
  39.         Serial.begin(57600);// begin the serial connection to the tellymate
  40.         reset_number();
  41. }
  42.  
  43. void loop(){   // begin the loop
  44.  
  45.         char key = keypad.getKey(); // get the key pressed
  46.  
  47.         int converted = atoi(&key);
  48.  
  49.         if (key != NO_KEY){
  50.                 Serial.print(key);
  51.  
  52.                 switch (converted) {
  53.                         case 0:
  54.                         led0();
  55.                         break;
  56.  
  57.                         case 1:
  58.                         led1();
  59.                         break;
  60.  
  61.                         case 2:
  62.                         led2();
  63.                         break;
  64.  
  65.                         case 3:
  66.                         led3();
  67.                         break;
  68.  
  69.                         case 4:
  70.                         led4();
  71.                         break;
  72.  
  73.                         case 5:
  74.                         led5();
  75.                         break;
  76.  
  77.                         case 6:
  78.                         led6();
  79.                         break;
  80.  
  81.                         case 7:
  82.                         led7();
  83.                         break;
  84.  
  85.                         case 8:
  86.                         led8();
  87.                         break;
  88.  
  89.                         case 9:
  90.                         led9();
  91.                         break;
  92.  
  93.                         default:
  94.                         ledalloff();
  95.  
  96.                 }
  97.  
  98.                 if (converted == ra) {
  99.                         Serial.println(" ");
  100.  
  101.                         Serial.println("KABOOM");
  102.                         ledexplode(8);
  103.                         Serial.println(" ");
  104.                         reset_number();
  105.                 }
  106.         }
  107. }
  108.  
  109.  
  110.  
  111. void reset_number(){
  112.  
  113.         delay(2000);
  114.         Serial.println(" ");
  115.         Serial.println("loading");
  116.         ledloading(7);
  117.         ledalloff();
  118.         Serial.println("nEw nUmbEr Chosen");
  119. // Seed the generator with static from the analog input
  120.         randomSeed(analogRead(0));
  121.         ra = random(10);
  122.  
  123. }
  124.  
  125. void ledalloff() {
  126.         digitalWrite(g, HIGH);
  127.         digitalWrite(f, HIGH);
  128.         digitalWrite(a, HIGH);
  129.         digitalWrite(b, HIGH);
  130.         digitalWrite(e, HIGH);
  131.         digitalWrite(d, HIGH);
  132.         digitalWrite(c, HIGH);
  133.         digitalWrite(point, HIGH);
  134. }
  135.  
  136. void led0() {
  137.         digitalWrite(g, HIGH);
  138.         digitalWrite(f, LOW);
  139.         digitalWrite(a, LOW);
  140.         digitalWrite(b, LOW);
  141.         digitalWrite(e, LOW);
  142.         digitalWrite(d, LOW);
  143.         digitalWrite(c, LOW);
  144.         digitalWrite(point, HIGH);
  145. }
  146.  
  147. void led1() {
  148.         digitalWrite(g, HIGH);
  149.         digitalWrite(f, HIGH);
  150.         digitalWrite(a, HIGH);
  151.         digitalWrite(b, LOW);
  152.         digitalWrite(e, HIGH);
  153.         digitalWrite(d, HIGH);
  154.         digitalWrite(c, LOW);
  155.         digitalWrite(point, HIGH);
  156. }
  157.  
  158. void led2() {
  159.         digitalWrite(g, LOW);
  160.         digitalWrite(f, HIGH);
  161.         digitalWrite(a, LOW);
  162.         digitalWrite(b, LOW);
  163.         digitalWrite(e, LOW);
  164.         digitalWrite(d, LOW);
  165.         digitalWrite(c, HIGH);
  166.         digitalWrite(point, HIGH);
  167. }
  168.  
  169. void led3() {
  170.         digitalWrite(g, LOW);
  171.         digitalWrite(f, HIGH);
  172.         digitalWrite(a, LOW);
  173.         digitalWrite(b, LOW);
  174.         digitalWrite(e, HIGH);
  175.         digitalWrite(d, LOW);
  176.         digitalWrite(c, LOW);
  177.         digitalWrite(point, HIGH);
  178. }
  179.  
  180. void led4() {
  181.         digitalWrite(g, LOW);
  182.         digitalWrite(f, LOW);
  183.         digitalWrite(a, HIGH);
  184.         digitalWrite(b, LOW);
  185.         digitalWrite(e, HIGH);
  186.         digitalWrite(d, HIGH);
  187.         digitalWrite(c, LOW);
  188.         digitalWrite(point, HIGH);
  189. }
  190.  
  191. void led5() {
  192.         digitalWrite(g, LOW);
  193.         digitalWrite(f, LOW);
  194.         digitalWrite(a, LOW);
  195.         digitalWrite(b, HIGH);
  196.         digitalWrite(e, HIGH);
  197.         digitalWrite(d, LOW);
  198.         digitalWrite(c, LOW);
  199.         digitalWrite(point, HIGH);
  200. }
  201.  
  202. void led6() {
  203.         digitalWrite(g, LOW);
  204.         digitalWrite(f, LOW);
  205.         digitalWrite(a, LOW);
  206.         digitalWrite(b, HIGH);
  207.         digitalWrite(e, LOW);
  208.         digitalWrite(d, LOW);
  209.         digitalWrite(c, LOW);
  210.         digitalWrite(point, HIGH);
  211. }
  212.  
  213. void led7() {
  214.         digitalWrite(g, HIGH);
  215.         digitalWrite(f, HIGH);
  216.         digitalWrite(a, LOW);
  217.         digitalWrite(b, LOW);
  218.         digitalWrite(e, HIGH);
  219.         digitalWrite(d, HIGH);
  220.         digitalWrite(c, LOW);
  221.         digitalWrite(point, HIGH);
  222. }
  223.  
  224. void led8() {
  225.         digitalWrite(g, LOW);
  226.         digitalWrite(f, LOW);
  227.         digitalWrite(a, LOW);
  228.         digitalWrite(b, LOW);
  229.         digitalWrite(e, LOW);
  230.         digitalWrite(d, LOW);
  231.         digitalWrite(c, LOW);
  232.         digitalWrite(point, HIGH);
  233. }
  234.  
  235. void led9() {
  236.         digitalWrite(g, LOW);
  237.         digitalWrite(f, LOW);
  238.         digitalWrite(a, LOW);
  239.         digitalWrite(b, LOW);
  240.         digitalWrite(e, HIGH);
  241.         digitalWrite(d, HIGH);
  242.         digitalWrite(c, LOW);
  243.         digitalWrite(point, HIGH);
  244. }
  245.  
  246. void ledstar() {
  247.         digitalWrite(g, LOW);
  248.         digitalWrite(f, LOW);
  249.         digitalWrite(a, HIGH);
  250.         digitalWrite(b, HIGH);
  251.         digitalWrite(e, HIGH);
  252.         digitalWrite(d, HIGH);
  253.         digitalWrite(c, LOW);
  254.         digitalWrite(point, HIGH);
  255. }
  256.  
  257. void ledhash() {
  258.         digitalWrite(g, LOW);
  259.         digitalWrite(f, HIGH);
  260.         digitalWrite(a, HIGH);
  261.         digitalWrite(b, HIGH);
  262.         digitalWrite(e, LOW);
  263.         digitalWrite(d, LOW);
  264.         digitalWrite(c, LOW);
  265.         digitalWrite(point, HIGH);
  266. }
  267.  
  268.  
  269. void ledexplode(int counter) {
  270.         int z = 0;
  271.         for(z = 0; z < counter; z++)
  272.         {
  273.                 ledalloff();
  274.                 digitalWrite (d, LOW);
  275.                 delay(60);
  276.                 digitalWrite (g, LOW);
  277.                 delay(60);
  278.                 digitalWrite (a, LOW);
  279.                 delay(60);
  280.                 digitalWrite (d, HIGH);
  281.                 delay(60);
  282.                 digitalWrite (g, HIGH);
  283.                 delay(60);
  284.                 digitalWrite (a, HIGH);
  285.                 delay(120);
  286.         }
  287. }
  288.  
  289. // called with ledloading(4)
  290. void ledloading(int counter) {
  291.         int z = 0;
  292.         for (z = 0; z < counter; z++)
  293.         {
  294.                 ledalloff();
  295.                 digitalWrite(a, LOW);
  296.                 digitalWrite(d, LOW);
  297.                 digitalWrite(f, HIGH);
  298.                 digitalWrite(c, HIGH);
  299.                 delay(80);
  300.                 digitalWrite(a, HIGH);
  301.                 digitalWrite(d, HIGH);
  302.                 digitalWrite(b, LOW);
  303.                 digitalWrite(e, LOW);
  304.                 delay(80);
  305.                 digitalWrite(b, HIGH);
  306.                 digitalWrite(e, HIGH);
  307.                 digitalWrite(f, LOW);
  308.                 digitalWrite(c, LOW);
  309.                 delay(80);
  310.         }
  311. }

Reply to "Random Keypad Game v1.01"

Here you can reply to the paste above

Create a snipurl

Make Private

Feeling clever? Set some advanced options.