Advertisement
Guest User

Untitled

a guest
Apr 29th, 2019
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 10.41 KB | None | 0 0
  1. int c[18] = {22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39};
  2. int r[30] = {A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, A15};
  3.  
  4. #define num 10
  5. void (*zn[num])(int pos);
  6.  
  7.  
  8.  
  9.  
  10.  
  11. void twentyFourHourFormat()
  12. {
  13.   int s = 0;
  14.   int s0 = 0;
  15.   int s1 = 0;
  16.   int m = 0;
  17.   int m0 = 0;
  18.   int m1 = 0;
  19.   int h = 0;
  20.   int h0 = 0;
  21.   int h1 = 0;
  22.  
  23.   s++;
  24.   s1 = s / 10;
  25.   s0 = s - (s1 * 10);
  26.   if (s > 59)
  27.   {
  28.     s = 0;
  29.     m++;
  30.     m1 = m / 10;
  31.     m0 = m - (m1 * 10);
  32.     if (m > 59)
  33.     {
  34.       m = 0;
  35.       h++;
  36.       h1 = h / 10;
  37.       h0 = h - (h1 * 10);
  38.       if (h > 23)
  39.         h = 0;
  40.     }
  41.   }
  42.   int k = 0;
  43.  
  44.   for (k = 0; k < num; k++)
  45.   {
  46.     if (s0 == k)
  47.       zn[k](0);
  48.   }
  49.   for (k = 0; k < 10; k++)
  50.   {
  51.     if (s1 == k)
  52.       zn[k](1);
  53.   }
  54.   for (k = 0; k < 10; k++)
  55.   {
  56.     if (m0 == k)
  57.       zn[k](2);
  58.   }
  59.   for (k = 0; k < 10; k++)
  60.   {
  61.     if (m1 == k)
  62.       zn[k](3);
  63.   }
  64.   for (k = 0; k < 10; k++)
  65.   {
  66.     if (h0 == k)
  67.       zn[k](4);
  68.   }
  69.   for (k = 0; k < 10; k++)
  70.   {
  71.     if (h1 == k)
  72.       zn[k](5);
  73.   }
  74. }
  75.  
  76.  
  77.  
  78.  
  79.  
  80. void setup() {
  81.   // put your setup code here, to run once:
  82.  
  83.   zn[0] =
  84.   {
  85.     int x;
  86.     int y;
  87.     if (pos == 0) {
  88.       x = 15;
  89.       y = 25;
  90.     }
  91.     if (pos == 1) {
  92.       x = 12;
  93.       y = 20;
  94.     }
  95.     if (pos == 2) {
  96.       x = 9;
  97.       y = 15;
  98.     }
  99.     if (pos == 3) {
  100.       x = 6;
  101.       y = 10;
  102.     }
  103.     if (pos == 4) {
  104.       x = 3;
  105.       y = 5;
  106.     }
  107.     if (pos == 5) {
  108.       x = 0;
  109.       y = 0;
  110.     }
  111.     digitalWrite(c[x], HIGH);
  112.     digitalWrite(c[x + 1], HIGH);
  113.     digitalWrite(c[x + 2], HIGH);
  114.     digitalWrite(r[y], LOW);
  115.     digitalWrite(r[y], HIGH);
  116.     digitalWrite(r[y + 1], LOW);
  117.     digitalWrite(r[y + 1], HIGH);
  118.     digitalWrite(c[x + 1], LOW);
  119.     digitalWrite(r[y + 2], LOW);
  120.     digitalWrite(r[y + 2], HIGH);
  121.     digitalWrite(c[x + 1], HIGH);
  122.     digitalWrite(r[y + 3], LOW);
  123.     digitalWrite(r[y + 3], HIGH);
  124.     digitalWrite(r[y + 4], LOW);
  125.     digitalWrite(r[y + 4], HIGH);
  126.   }
  127.  
  128.   zn[1] =
  129.   {
  130.     int x;
  131.     int y;
  132.     if (pos == 0) {
  133.       x = 15;
  134.       y = 25;
  135.     }
  136.     if (pos == 1) {
  137.       x = 12;
  138.       y = 20;
  139.     }
  140.     if (pos == 2) {
  141.       x = 9;
  142.       y = 15;
  143.     }
  144.     if (pos == 3) {
  145.       x = 6;
  146.       y = 10;
  147.     }
  148.     if (pos == 4) {
  149.       x = 3;
  150.       y = 5;
  151.     }
  152.     if (pos == 5) {
  153.       x = 0;
  154.       y = 0;
  155.     }
  156.     digitalWrite(c[x + 2], HIGH);
  157.     digitalWrite(r[y], LOW);
  158.     digitalWrite(r[y], HIGH);
  159.     digitalWrite(r[y + 1], LOW);
  160.     digitalWrite(r[y + 1], HIGH);
  161.     digitalWrite(r[y + 2], LOW);
  162.     digitalWrite(r[y + 2], HIGH);
  163.     digitalWrite(r[y + 3], LOW);
  164.     digitalWrite(r[y + 3], HIGH);
  165.     digitalWrite(r[y + 4], LOW);
  166.     digitalWrite(r[y + 4], HIGH);
  167.   }
  168.  
  169.   zn[2] =
  170.   {
  171.     int x;
  172.     int y;
  173.     if (pos == 0) {
  174.       x = 15;
  175.       y = 25;
  176.     }
  177.     if (pos == 1) {
  178.       x = 12;
  179.       y = 20;
  180.     }
  181.     if (pos == 2) {
  182.       x = 9;
  183.       y = 15;
  184.     }
  185.     if (pos == 3) {
  186.       x = 6;
  187.       y = 10;
  188.     }
  189.     if (pos == 4) {
  190.       x = 3;
  191.       y = 5;
  192.     }
  193.     if (pos == 5) {
  194.       x = 0;
  195.       y = 0;
  196.     }
  197.     digitalWrite(c[x], HIGH);
  198.     digitalWrite(c[x + 1], HIGH);
  199.     digitalWrite(c[x + 2], HIGH);
  200.     digitalWrite(r[y], LOW);
  201.     digitalWrite(r[y], HIGH);
  202.     digitalWrite(c[x], LOW);
  203.     digitalWrite(r[y + 1], LOW);
  204.     digitalWrite(r[y + 1], HIGH);
  205.     digitalWrite(c[x], HIGH);
  206.     digitalWrite(r[y + 2], LOW);
  207.     digitalWrite(r[y + 2], HIGH);
  208.     digitalWrite(c[x + 2], LOW);
  209.     digitalWrite(r[y + 3], LOW);
  210.     digitalWrite(r[y + 3], HIGH);
  211.     digitalWrite(c[x + 2], HIGH);
  212.     digitalWrite(r[y + 4], LOW);
  213.     digitalWrite(r[y + 4], HIGH);
  214.   }
  215.  
  216.   zn[3] =
  217.   {
  218.     int x;
  219.     int y;
  220.     if (pos == 0) {
  221.       x = 15;
  222.       y = 25;
  223.     }
  224.     if (pos == 1) {
  225.       x = 12;
  226.       y = 20;
  227.     }
  228.     if (pos == 2) {
  229.       x = 9;
  230.       y = 15;
  231.     }
  232.     if (pos == 3) {
  233.       x = 6;
  234.       y = 10;
  235.     }
  236.     if (pos == 4) {
  237.       x = 3;
  238.       y = 5;
  239.     }
  240.     if (pos == 5) {
  241.       x = 0;
  242.       y = 0;
  243.     }
  244.     digitalWrite(c[x + 2], HIGH);
  245.     digitalWrite(r[y], LOW);
  246.     digitalWrite(c[x], HIGH);
  247.     digitalWrite(c[x + 1], HIGH);
  248.     digitalWrite(r[y], HIGH);
  249.     digitalWrite(c[x], LOW);
  250.     digitalWrite(c[x + 1], LOW);
  251.     digitalWrite(r[y + 1], LOW);
  252.     digitalWrite(r[y + 1], HIGH);
  253.     digitalWrite(c[x], HIGH);
  254.     digitalWrite(c[x + 1], HIGH);
  255.     digitalWrite(r[y + 2], LOW);
  256.     digitalWrite(c[x], LOW);
  257.     digitalWrite(c[x + 1], LOW);
  258.     digitalWrite(r[y + 2], HIGH);
  259.     digitalWrite(r[y + 3], LOW);
  260.     digitalWrite(r[y + 3], HIGH);
  261.     digitalWrite(c[x], HIGH);
  262.     digitalWrite(c[x + 1], HIGH);
  263.     digitalWrite(r[y + 4], LOW);
  264.     digitalWrite(r[y + 4], HIGH);
  265.   }
  266.  
  267.   zn[4] =
  268.   {
  269.     int x;
  270.     int y;
  271.     if (pos == 0) {
  272.       x = 15;
  273.       y = 25;
  274.     }
  275.     if (pos == 1) {
  276.       x = 12;
  277.       y = 20;
  278.     }
  279.     if (pos == 2) {
  280.       x = 9;
  281.       y = 15;
  282.     }
  283.     if (pos == 3) {
  284.       x = 6;
  285.       y = 10;
  286.     }
  287.     if (pos == 4) {
  288.       x = 3;
  289.       y = 5;
  290.     }
  291.     if (pos == 5) {
  292.       x = 0;
  293.       y = 0;
  294.     }
  295.     digitalWrite(c[x], HIGH);
  296.     digitalWrite(c[x + 2], HIGH);
  297.     digitalWrite(r[y], LOW);
  298.     digitalWrite(r[y], HIGH);
  299.     digitalWrite(r[y + 1], LOW);
  300.     digitalWrite(r[y + 1], HIGH);
  301.     digitalWrite(c[x + 1], HIGH);
  302.     digitalWrite(r[y + 2], LOW);
  303.     digitalWrite(r[y + 2], HIGH);
  304.     digitalWrite(c[x + 1], LOW);
  305.     digitalWrite(c[x], LOW);
  306.     digitalWrite(r[y + 3], LOW);
  307.     digitalWrite(r[y + 3], HIGH);
  308.     digitalWrite(r[y + 4], LOW);
  309.     digitalWrite(r[y + 4], HIGH);
  310.   }
  311.  
  312.   zn[5] =
  313.   {
  314.     int x;
  315.     int y;
  316.     if (pos == 0) {
  317.       x = 15;
  318.       y = 25;
  319.     }
  320.     if (pos == 1) {
  321.       x = 12;
  322.       y = 20;
  323.     }
  324.     if (pos == 2) {
  325.       x = 9;
  326.       y = 15;
  327.     }
  328.     if (pos == 3) {
  329.       x = 6;
  330.       y = 10;
  331.     }
  332.     if (pos == 4) {
  333.       x = 3;
  334.       y = 5;
  335.     }
  336.     if (pos == 5) {
  337.       x = 0;
  338.       y = 0;
  339.     }
  340.     digitalWrite(c[x], HIGH);
  341.     digitalWrite(c[x + 1], HIGH);
  342.     digitalWrite(c[x + 2], HIGH);
  343.     digitalWrite(r[y], LOW);
  344.     digitalWrite(r[y], HIGH);
  345.     digitalWrite(c[x + 2], LOW);
  346.     digitalWrite(r[y + 1], LOW);
  347.     digitalWrite(r[y + 1], HIGH);
  348.     digitalWrite(c[x + 2], HIGH);
  349.     digitalWrite(r[y + 2], LOW);
  350.     digitalWrite(r[y + 2], HIGH);
  351.     digitalWrite(c[x], LOW);
  352.     digitalWrite(r[y + 3], LOW);
  353.     digitalWrite(r[y + 3], HIGH);
  354.     digitalWrite(c[x], HIGH);
  355.     digitalWrite(r[y + 4], LOW);
  356.     digitalWrite(r[y + 4], HIGH);
  357.  
  358.   }
  359.  
  360.   zn[6] =
  361.   {
  362.     int x;
  363.     int y;
  364.     if (pos == 0) {
  365.       x = 15;
  366.       y = 25;
  367.     }
  368.     if (pos == 1) {
  369.       x = 12;
  370.       y = 20;
  371.     }
  372.     if (pos == 2) {
  373.       x = 9;
  374.       y = 15;
  375.     }
  376.     if (pos == 3) {
  377.       x = 6;
  378.       y = 10;
  379.     }
  380.     if (pos == 4) {
  381.       x = 3;
  382.       y = 5;
  383.     }
  384.     if (pos == 5) {
  385.       x = 0;
  386.       y = 0;
  387.     }
  388.     digitalWrite(c[x], HIGH);
  389.     digitalWrite(c[x + 1], HIGH);
  390.     digitalWrite(c[x + 2], HIGH);
  391.     digitalWrite(r[y], LOW);
  392.     digitalWrite(r[y], HIGH);
  393.     digitalWrite(c[x + 2], LOW);
  394.     digitalWrite(r[y + 1], LOW);
  395.     digitalWrite(r[y + 1], HIGH);
  396.     digitalWrite(c[x + 2], HIGH);
  397.     digitalWrite(r[y + 2], LOW);
  398.     digitalWrite(r[y + 2], HIGH);
  399.     digitalWrite(r[y + 3], LOW);
  400.     digitalWrite(r[y + 3], HIGH);
  401.     digitalWrite(r[y + 4], LOW);
  402.     digitalWrite(r[y + 4], HIGH);
  403.   }
  404.  
  405.   zn[7] =
  406.   {
  407.     int x;
  408.     int y;
  409.     if (pos == 0) {
  410.       x = 15;
  411.       y = 25;
  412.     }
  413.     if (pos == 1) {
  414.       x = 12;
  415.       y = 20;
  416.     }
  417.     if (pos == 2) {
  418.       x = 9;
  419.       y = 15;
  420.     }
  421.     if (pos == 3) {
  422.       x = 6;
  423.       y = 10;
  424.     }
  425.     if (pos == 4) {
  426.       x = 3;
  427.       y = 5;
  428.     }
  429.     if (pos == 5) {
  430.       x = 0;
  431.       y = 0;
  432.     }
  433.     digitalWrite(c[x + 2], HIGH);
  434.     digitalWrite(r[y], LOW);
  435.     digitalWrite(c[x], HIGH);
  436.     digitalWrite(c[x + 1], HIGH);
  437.     digitalWrite(r[y], HIGH);
  438.     digitalWrite(c[x], LOW);
  439.     digitalWrite(c[x + 1], LOW);
  440.     digitalWrite(r[y + 1], LOW);
  441.     digitalWrite(r[y + 1], HIGH);
  442.     digitalWrite(r[y + 2], LOW);
  443.     digitalWrite(r[y + 2], HIGH);
  444.     digitalWrite(r[y + 3], LOW);
  445.     digitalWrite(r[y + 3], HIGH);
  446.     digitalWrite(r[y + 4], LOW);
  447.     digitalWrite(r[y + 4], HIGH);
  448.   }
  449.  
  450.   zn[8] =
  451.   {
  452.     int x;
  453.     int y;
  454.     if (pos == 0) {
  455.       x = 15;
  456.       y = 25;
  457.     }
  458.     if (pos == 1) {
  459.       x = 12;
  460.       y = 20;
  461.     }
  462.     if (pos == 2) {
  463.       x = 9;
  464.       y = 15;
  465.     }
  466.     if (pos == 3) {
  467.       x = 6;
  468.       y = 10;
  469.     }
  470.     if (pos == 4) {
  471.       x = 3;
  472.       y = 5;
  473.     }
  474.     if (pos == 5) {
  475.       x = 0;
  476.       y = 0;
  477.     }
  478.     digitalWrite(c[x + 2], HIGH);
  479.     digitalWrite(c[x], HIGH);
  480.     digitalWrite(c[x + 1], HIGH);
  481.     digitalWrite(r[y], LOW);
  482.     digitalWrite(r[y], HIGH);
  483.     digitalWrite(r[y + 1], LOW);
  484.     digitalWrite(r[y + 1], HIGH);
  485.     digitalWrite(r[y + 2], LOW);
  486.     digitalWrite(r[y + 2], HIGH);
  487.     digitalWrite(r[y + 3], LOW);
  488.     digitalWrite(r[y + 3], HIGH);
  489.     digitalWrite(r[y + 4], LOW);
  490.     digitalWrite(r[y + 4], HIGH);
  491.   }
  492.  
  493.   zn[9] =
  494.   {
  495.     int x;
  496.     int y;
  497.     if (pos == 0) {
  498.       x = 15;
  499.       y = 25;
  500.     }
  501.     if (pos == 1) {
  502.       x = 12;
  503.       y = 20;
  504.     }
  505.     if (pos == 2) {
  506.       x = 9;
  507.       y = 15;
  508.     }
  509.     if (pos == 3) {
  510.       x = 6;
  511.       y = 10;
  512.     }
  513.     if (pos == 4) {
  514.       x = 3;
  515.       y = 5;
  516.     }
  517.     if (pos == 5) {
  518.       x = 0;
  519.       y = 0;
  520.     }
  521.     digitalWrite(c[x + 2], HIGH);
  522.     digitalWrite(c[x], HIGH);
  523.     digitalWrite(c[x + 1], HIGH);
  524.     digitalWrite(r[y], LOW);
  525.     digitalWrite(r[y], HIGH);
  526.     digitalWrite(r[y + 1], LOW);
  527.     digitalWrite(r[y + 1], HIGH);
  528.     digitalWrite(r[y + 2], LOW);
  529.     digitalWrite(r[y + 2], HIGH);
  530.     digitalWrite(c[x], LOW);
  531.     digitalWrite(r[y + 3], LOW);
  532.     digitalWrite(r[y + 3], HIGH);
  533.     digitalWrite(c[x], HIGH);
  534.     digitalWrite(r[y + 4], LOW);
  535.     digitalWrite(r[y + 4], HIGH);
  536.   }
  537.  
  538.   for (int i = 0; i < 18; i++)
  539.   {
  540.     pinMode(c[i], OUTPUT);
  541.     digitalWrite(c[i], HIGH);
  542.   }
  543.   for (int j = 0; j < 5; j++)
  544.   {
  545.     pinMode(r[j], OUTPUT);
  546.     digitalWrite(r[j], HIGH);
  547.   }
  548.   for (i = 0; i < 6; i++)
  549.   {
  550.     zn[0](i);
  551.   }
  552. }
  553.  
  554. void loop() {
  555.   // put your main code here, to run repeatedly:
  556.   twentyHourFormat();
  557. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement