Advertisement
LeventeDaradici

Hot Glue Stick Display Clock - Arduino

May 16th, 2022
740
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // https://www.youtube.com/c/LeventeDaradici/videos
  2. #include <MyRealTimeClock.h>
  3. MyRealTimeClock myRTC(6, 7, 8);
  4. #include <EEPROM.h>
  5.  
  6. #include <Shifty.h>
  7. Shifty shift;
  8.  
  9. #include <OneWire.h>
  10. #include <DallasTemperature.h>
  11. #define ONE_WIRE_BUS 2
  12. OneWire oneWire(ONE_WIRE_BUS);
  13. DallasTemperature sensors(&oneWire);
  14.  
  15.   int test, PrimaCitireA3, IntarziereANIMATIE, InitialZISAPTAMANA, InitialZIUA, InitialLUNA, InitialAN, InitialMINUT, InitialORA, NewMINUT, NewORA, PrimaCitire, UltimaStareButonPlus, UltimaStareButonSetup, StareButonPlus, StareButonSetup, scene, t1, t2 ,o, m, o1, o2, m1, m2, Pminut, Pora, minut, ora, num, zeci, sute, mii = 0;
  16.   String STRora,STRmin, STRtemp = "";
  17.   String STRt1, STRt2, STRo1, STRo2, STRm1, STRm2 = "";
  18.   float temperatura = 0;
  19.  
  20.   unsigned long TimpORA = 10000;
  21.   unsigned long TimpTEMP = 20000;
  22.   unsigned long currentMillis;
  23.   unsigned long startMillis;  
  24.   bool AfisatTEMP, AfisatORA = false ;
  25.  
  26. void setup()
  27.      {
  28.        IntarziereANIMATIE = EEPROM.read(0);
  29.        if (IntarziereANIMATIE > 15) IntarziereANIMATIE = 0;
  30.        shift.setBitCount(32);
  31.        shift.setPins(11, 12, 9);
  32.  
  33.        for (test = 0; test <= 32 ; test++)
  34.             {
  35.               shift.writeBit(test - 1, LOW);  
  36.               shift.writeBit(test, HIGH);
  37.               delay(500);
  38.             }
  39.  
  40.        //  myRTC.setDS1302Time(00,18, 30, 1 , 10, 05, 2022);
  41.        pinMode(4, INPUT);
  42.        pinMode(5, INPUT);
  43.        scene = 0;
  44.        startMillis = millis();
  45.        NewMINUT = myRTC.minutes;
  46.        NewORA = myRTC.hours;
  47.      }
  48.  
  49. void loop()
  50.      {
  51.      if (scene == 0)
  52.        {    
  53.         currentMillis = millis();
  54.         if (currentMillis - startMillis <= TimpORA)  
  55.             {
  56.               if (AfisatORA == false)
  57.                  {              
  58.                    AfiseazaORA();
  59.                    AfisatORA = true;
  60.                    AfisatTEMP = false;
  61.                  }
  62.             }
  63.         if (currentMillis - startMillis > TimpORA && currentMillis - startMillis <= TimpTEMP)
  64.            {
  65.               if (AfisatTEMP == false)
  66.                  {
  67.                    AfiseazaTEMP();
  68.                    AfisatORA = false;
  69.                    AfisatTEMP = true;
  70.                  }
  71.            }
  72.         if (currentMillis - startMillis > TimpTEMP)
  73.            {
  74.               startMillis = millis();
  75.            }              
  76.              
  77.        }    
  78.    
  79.  
  80.     StareButonSetup = digitalRead(5);
  81.     if (StareButonSetup != UltimaStareButonSetup)
  82.     {
  83.       if (StareButonSetup == HIGH)
  84.       {
  85.         scene = scene + 1;
  86.         if (scene > 3)
  87.            {
  88.               scene = 0;
  89.               InitialAN = myRTC.year;
  90.               InitialLUNA = myRTC.month;
  91.               InitialZIUA = myRTC.dayofmonth;
  92.               InitialZISAPTAMANA = myRTC.dayofweek;
  93.               EEPROM.update(0, IntarziereANIMATIE);
  94.               startMillis = millis();
  95.               myRTC.setDS1302Time(00,NewMINUT, NewORA, InitialZISAPTAMANA , InitialZIUA, InitialLUNA, InitialAN);
  96.               AfiseazaORA();
  97.            }
  98.         if (scene == 1)
  99.            {
  100.             AfiseazaORA();
  101.             StergeCaracterul(4);
  102.             StergeCaracterul(3);
  103.             PrimaCitire = 0;
  104.            }
  105.         if (scene == 2)
  106.            {
  107.             AfiseazaORA();
  108.             StergeCaracterul(2);
  109.             StergeCaracterul(1);
  110.             PrimaCitire = 0;
  111.            }  
  112.         if (scene == 3)
  113.            {
  114.             StergeRapid();
  115.                   if (IntarziereANIMATIE == 0) zero(2);
  116.                   if (IntarziereANIMATIE == 1) unu(2);
  117.                   if (IntarziereANIMATIE == 2) doi(2);
  118.                   if (IntarziereANIMATIE == 3) trei(2);
  119.                   if (IntarziereANIMATIE == 4) patru(2);
  120.                   if (IntarziereANIMATIE == 5) cinci(2);
  121.                   if (IntarziereANIMATIE == 6) sase(2);
  122.                   if (IntarziereANIMATIE == 7) sapte(2);
  123.                   if (IntarziereANIMATIE == 8) opt(2);
  124.                   if (IntarziereANIMATIE == 9) noua(2);  
  125.                   if (IntarziereANIMATIE == 10) { unu(1);  zero(2);}
  126.                   if (IntarziereANIMATIE == 11) { unu(1);  unu(2);}
  127.                   if (IntarziereANIMATIE == 12) { unu(1);  doi(2);}
  128.                   if (IntarziereANIMATIE == 13) { unu(1);  trei(2);}
  129.                   if (IntarziereANIMATIE == 14) { unu(1);  patru(2);}
  130.                   if (IntarziereANIMATIE == 15) { unu(1);  cinci(2);}  
  131.            }                      
  132.         }
  133.     } else { }
  134.     delay(5);
  135.     UltimaStareButonSetup = StareButonSetup;                  
  136.  
  137.     StareButonPlus = digitalRead(4);
  138.     if (StareButonPlus != UltimaStareButonPlus)
  139.     {
  140.       if (StareButonPlus == HIGH)
  141.       {
  142.  
  143.         if (scene == 1)
  144.            {
  145.             if (PrimaCitire == 0)
  146.                {
  147.                   NewORA = myRTC.hours;
  148.                   InitialORA = NewORA;
  149.                   PrimaCitire = 1;
  150.                }
  151.             NewORA = NewORA + 1;
  152.             if (NewORA > 23)
  153.                 {
  154.                   NewORA = 0;
  155.                 }
  156.                 AfiseazaDoarOra(NewORA);
  157.            }
  158.         if (scene == 2)
  159.            {
  160.      if (PrimaCitire == 0)
  161.                {
  162.                   NewMINUT = myRTC.minutes;
  163.                   InitialMINUT = NewMINUT;
  164.                   PrimaCitire = 1;
  165.                }
  166.             NewMINUT = NewMINUT + 1;
  167.             if (NewMINUT > 59)
  168.                 {
  169.                   NewMINUT = 0;
  170.                 }
  171.                 AfiseazaDoarMINUTUL(NewMINUT);
  172.            }    
  173.  
  174.         if (scene == 3)
  175.            {
  176.        if (PrimaCitireA3 < 1)
  177.                {                                            
  178.                   PrimaCitireA3 = 1;
  179.                }
  180.             IntarziereANIMATIE = IntarziereANIMATIE + 1;
  181.             if (NewORA == 0)
  182.                {
  183.                 if (NewMINUT ==0)
  184.                    {
  185.                       NewMINUT = myRTC.minutes;
  186.                       InitialMINUT = NewMINUT;
  187.                       NewORA = myRTC.hours;
  188.                       InitialORA = NewORA;
  189.                    }
  190.                }
  191.             if (IntarziereANIMATIE > 15)
  192.                 {
  193.                   IntarziereANIMATIE = 0;
  194.                 }
  195.                 StergeRapid();
  196.                 if (IntarziereANIMATIE == 0) zero(2);
  197.                 if (IntarziereANIMATIE == 1) unu(2);
  198.                 if (IntarziereANIMATIE == 2) doi(2);
  199.                 if (IntarziereANIMATIE == 3) trei(2);
  200.                 if (IntarziereANIMATIE == 4) patru(2);
  201.                 if (IntarziereANIMATIE == 5) cinci(2);
  202.                 if (IntarziereANIMATIE == 6) sase(2);
  203.                 if (IntarziereANIMATIE == 7) sapte(2);
  204.                 if (IntarziereANIMATIE == 8) opt(2);
  205.                 if (IntarziereANIMATIE == 9) noua(2);  
  206.                 if (IntarziereANIMATIE == 10) { unu(1);  zero(2);}        
  207.                 if (IntarziereANIMATIE == 11) { unu(1);  unu(2);}
  208.                 if (IntarziereANIMATIE == 12) { unu(1);  doi(2);}
  209.                 if (IntarziereANIMATIE == 13) { unu(1);  trei(2);}
  210.                 if (IntarziereANIMATIE == 14) { unu(1);  patru(2);}
  211.                 if (IntarziereANIMATIE == 15) { unu(1);  cinci(2);}                                                                    
  212.            }                  
  213.         }
  214.     } else { }
  215.     delay(5);
  216.     UltimaStareButonPlus = StareButonPlus;    
  217.          
  218.      }
  219.      
  220. void AfiseazaDoarMINUTUL(int aMINUT)
  221.     {
  222.          String STRaMINUT =  String(aMINUT);
  223.          m1 = STRaMINUT.toInt();
  224.          
  225.          int lungimeMIN = STRaMINUT.length();
  226.          if (lungimeMIN < 2)
  227.             {
  228.                STRm1 = "0";
  229.                STRm2 = STRaMINUT.substring(0,1);
  230.             }
  231.           if (lungimeMIN > 1)
  232.                   {
  233.               STRm1 = STRaMINUT.substring(0,1);
  234.               STRm2 = STRaMINUT.substring(1,2);
  235.  
  236.                   }
  237.         m1 = STRm1.toInt();
  238.         m2 = STRm2.toInt();    
  239.         StergeCaracterul(3);              
  240.         if (m1 == 0) zero(3);
  241.         if (m1 == 1) unu(3);
  242.         if (m1 == 2) doi(3);
  243.         if (m1 == 3) trei(3);
  244.         if (m1 == 4) patru(3);
  245.         if (m1 == 5) cinci(3);
  246.         if (m1 == 6) sase(3);
  247.         if (m1 == 7) sapte(3);
  248.         if (m1 == 8) opt(3);
  249.         if (m1 == 9) noua(3);
  250.        
  251.         StergeCaracterul(4);
  252.         if (m2 == 0) zero(4);
  253.         if (m2 == 1) unu(4);
  254.         if (m2 == 2) doi(4);
  255.         if (m2 == 3) trei(4);
  256.         if (m2 == 4) patru(4);
  257.         if (m2 == 5) cinci(4);
  258.         if (m2 == 6) sase(4);
  259.         if (m2 == 7) sapte(4);
  260.         if (m2 == 8) opt(4);
  261.         if (m2 == 9) noua(4);          
  262.     }
  263.    
  264. void AfiseazaDoarOra(int Aora)
  265.      {
  266.          String STRaORA =  String(Aora);
  267.          o1 = STRaORA.toInt();
  268.          
  269.          int lungimeORA = STRaORA.length();
  270.          if (lungimeORA < 2)
  271.             {
  272.                STRo1 = "0";
  273.                STRo2 = STRaORA.substring(0,1);
  274.             }
  275.          if (lungimeORA > 1)
  276.             {
  277.                STRo1 = STRaORA.substring(0,1);
  278.                STRo2 = STRaORA.substring(1,2);
  279.             }
  280.         o1 = STRo1.toInt();
  281.         o2 = STRo2.toInt();  
  282.            
  283.         StergeCaracterul(1);        
  284.         if (o1 == 0) zero(1);
  285.         if (o1 == 1) unu(1);
  286.         if (o1 == 2) doi(1);
  287.        
  288.         StergeCaracterul(2);              
  289.         if (o2 == 0) zero(2);
  290.         if (o2 == 1) unu(2);
  291.         if (o2 == 2) doi(2);
  292.         if (o2 == 3) trei(2);
  293.         if (o2 == 4) patru(2);
  294.         if (o2 == 5) cinci(2);
  295.         if (o2 == 6) sase(2);
  296.         if (o2 == 7) sapte(2);
  297.         if (o2 == 8) opt(2);
  298.         if (o2 == 9) noua(2);                                                                                                                      
  299.      }
  300.  
  301. void AfiseazaORA()
  302.      {
  303.         STRora = "";
  304.         STRmin = "";
  305.         myRTC.updateTime();
  306.         minut = myRTC.minutes;
  307.         ora = myRTC.hours;    
  308.         AfiseazaDoarOra(ora);
  309.         AfiseazaDoarMINUTUL(minut);      
  310.      }
  311. void AfiseazaTEMP()
  312.      {
  313.  
  314.         sensors.requestTemperatures();
  315.         temperatura = sensors.getTempCByIndex(0);
  316.      
  317.         STRtemp = String(temperatura,0);
  318.         int lungimeTEMP = STRtemp.length();  
  319.          if (lungimeTEMP > 1)
  320.             {
  321.               STRt1 = STRtemp.substring(0,1);
  322.               STRt2 = STRtemp.substring(1,2);
  323.             } else
  324.                   {
  325.                     STRt1 = "0";
  326.                     STRt2 = STRtemp.substring(0,1);
  327.                   }
  328.         t1 = STRt1.toInt();
  329.         t2 = STRt2.toInt();
  330.        
  331.         StergeCaracterul(1);                              
  332.         if (t1 == 0) zero(1);
  333.         if (t1 == 1) unu(1);
  334.         if (t1 == 2) doi(1);
  335.         if (t1 == 3) trei(1);
  336.         if (t1 == 4) patru(1);
  337.         if (t1 == 5) cinci(1);
  338.         if (t1 == 6) sase(1);
  339.         if (t1 == 7) sapte(1);
  340.         if (t1 == 8) opt(1);
  341.         if (t2 == 9) noua(1);
  342.  
  343.         StergeCaracterul(2);                
  344.         if (t2 == 0) zero(2);
  345.         if (t2 == 1) unu(2);
  346.         if (t2 == 2) doi(2);
  347.         if (t2 == 3) trei(2);
  348.         if (t2 == 4) patru(2);
  349.         if (t2 == 5) cinci(2);
  350.         if (t2 == 6) sase(2);
  351.         if (t2 == 7) sapte(2);
  352.         if (t2 == 8) opt(2);
  353.         if (t2 == 9) noua(2);                      
  354.         StergeCaracterul(3);
  355.         grade();
  356.         StergeCaracterul(4);
  357.         Celsius();
  358.        
  359.      }
  360.  
  361. void grade()
  362.      {
  363.              shift.writeBit(9, HIGH);
  364.              pauza();
  365.              shift.writeBit(10, HIGH);
  366.              pauza();
  367.              shift.writeBit(14, HIGH);
  368.              pauza();
  369.              shift.writeBit(15, HIGH);
  370.      }
  371.  
  372. void Celsius()
  373.      {
  374.        shift.writeBit(4, HIGH);
  375.        pauza;
  376.        shift.writeBit(5, HIGH);
  377.        pauza;
  378.        shift.writeBit(6, HIGH);
  379.        pauza;
  380.        shift.writeBit(1, HIGH);
  381.        pauza;
  382.      }
  383.  
  384. void StergeRapid()
  385.      {
  386.         int i;
  387.            for (i = 0; i <= 32 ; i++)
  388.                {
  389.                  shift.writeBit(32-i, LOW);
  390.                }
  391.      }
  392. void StergeTotul()
  393.      {
  394.         int i;
  395.            for (i = 0; i <= 32 ; i++)
  396.                {
  397.                  shift.writeBit(32-i, LOW);
  398.                  pauza();
  399.                }
  400.      }
  401.      
  402. void StergeCaracterul(int i)
  403.      {
  404.        int numar;
  405.       if (i == 4)
  406.          {
  407.            for (numar=0; numar<=8 ; numar++)
  408.                {
  409.                  shift.writeBit(numar, LOW);
  410.                  pauza;
  411.                }
  412.          }
  413.       if (i == 3)
  414.          {
  415.            for (numar=9; numar<=16 ; numar++)
  416.                {
  417.                  shift.writeBit(numar, LOW);
  418.                  pauza;
  419.                }
  420.          }
  421.       if (i == 2)
  422.          {
  423.            for (numar=17; numar<=24 ; numar++)
  424.                {
  425.                  shift.writeBit(numar, LOW);
  426.                  pauza;
  427.                }
  428.          }
  429.       if (i == 1)
  430.          {
  431.            for (numar=25; numar<=32 ; numar++)
  432.                {
  433.                  shift.writeBit(numar, LOW);
  434.                  pauza;
  435.                }
  436.          }
  437.      }
  438. void pauza()
  439.      {
  440.         delay(IntarziereANIMATIE *10);
  441.      }
  442.    
  443. void unu(int c)
  444.      {
  445.        if (c == 4)
  446.           {
  447.              shift.writeBit(2, HIGH);
  448.              pauza();
  449.              shift.writeBit(3, HIGH);
  450.           }
  451.        if (c == 3)
  452.           {
  453.              shift.writeBit(10, HIGH);
  454.              pauza();
  455.              shift.writeBit(11, HIGH);
  456.           }
  457.        if (c == 2)
  458.           {
  459.              shift.writeBit(21, HIGH);
  460.              pauza();
  461.              shift.writeBit(22, HIGH);
  462.           }
  463.        if (c == 1)
  464.           {
  465.              shift.writeBit(29, HIGH);
  466.              pauza();
  467.              shift.writeBit(30, HIGH);
  468.           }
  469.      }  
  470.  
  471. void doi(int c)
  472.      {
  473.        if (c == 4)
  474.           {      
  475.              shift.writeBit(1, HIGH);
  476.              pauza();
  477.              shift.writeBit(2, HIGH);
  478.              pauza();
  479.              shift.writeBit(7, HIGH);
  480.              pauza();
  481.              shift.writeBit(5, HIGH);
  482.              pauza();
  483.              shift.writeBit(4, HIGH);
  484.           }
  485.        if (c == 3)
  486.           {      
  487.              shift.writeBit(9, HIGH);
  488.              pauza();
  489.              shift.writeBit(10, HIGH);
  490.              pauza();
  491.              shift.writeBit(15, HIGH);
  492.              pauza();
  493.              shift.writeBit(13, HIGH);
  494.              pauza();
  495.              shift.writeBit(12, HIGH);
  496.           }
  497.        if (c == 2)
  498.           {      
  499.              shift.writeBit(20, HIGH);
  500.              pauza();
  501.              shift.writeBit(21, HIGH);
  502.              pauza();
  503.              shift.writeBit(23, HIGH);
  504.              pauza();
  505.              shift.writeBit(18, HIGH);
  506.              pauza();
  507.              shift.writeBit(17, HIGH);
  508.           }
  509.        if (c == 1)
  510.           {      
  511.              shift.writeBit(28, HIGH);
  512.              pauza();
  513.              shift.writeBit(29, HIGH);
  514.              pauza();
  515.              shift.writeBit(31, HIGH);
  516.              pauza();
  517.              shift.writeBit(26, HIGH);
  518.              pauza();
  519.              shift.writeBit(25, HIGH);
  520.           }
  521.      }
  522. void trei(int c)
  523.      {
  524.         if (c == 4)
  525.            {  
  526.              shift.writeBit(1, HIGH);
  527.              pauza();
  528.              shift.writeBit(2, HIGH);
  529.              pauza();
  530.              shift.writeBit(7, HIGH);
  531.              pauza();
  532.              shift.writeBit(3, HIGH);
  533.              pauza();
  534.              shift.writeBit(4, HIGH);
  535.            }
  536.         if (c == 3)
  537.            {  
  538.              shift.writeBit(9, HIGH);
  539.              pauza();
  540.              shift.writeBit(10, HIGH);
  541.              pauza();
  542.              shift.writeBit(15, HIGH);
  543.              pauza();
  544.              shift.writeBit(11, HIGH);
  545.              pauza();
  546.              shift.writeBit(12, HIGH);
  547.            }
  548.         if (c == 2)
  549.            {  
  550.              shift.writeBit(20, HIGH);
  551.              pauza();
  552.              shift.writeBit(21, HIGH);
  553.              pauza();
  554.              shift.writeBit(23, HIGH);
  555.              pauza();
  556.              shift.writeBit(22, HIGH);
  557.              pauza();
  558.              shift.writeBit(17, HIGH);
  559.            }
  560.         if (c == 1)
  561.            {  
  562.              shift.writeBit(28, HIGH);
  563.              pauza();
  564.              shift.writeBit(29, HIGH);
  565.              pauza();
  566.              shift.writeBit(31, HIGH);
  567.              pauza();
  568.              shift.writeBit(30, HIGH);
  569.              pauza();
  570.              shift.writeBit(25, HIGH);
  571.            }
  572.      }
  573.  
  574. void patru(int c)
  575.      {
  576.         if (c == 4)
  577.            {  
  578.              shift.writeBit(6, HIGH);
  579.              pauza();
  580.              shift.writeBit(7, HIGH);
  581.              pauza();
  582.              shift.writeBit(2, HIGH);
  583.              pauza();
  584.              shift.writeBit(3, HIGH);
  585.            }
  586.         if (c == 3)
  587.            {  
  588.              shift.writeBit(14, HIGH);
  589.              pauza();
  590.              shift.writeBit(15, HIGH);
  591.              pauza();
  592.              shift.writeBit(10, HIGH);
  593.              pauza();
  594.              shift.writeBit(11, HIGH);
  595.            }
  596.         if (c == 2)
  597.            {  
  598.              shift.writeBit(19, HIGH);
  599.              pauza();
  600.              shift.writeBit(23, HIGH);
  601.              pauza();
  602.              shift.writeBit(21, HIGH);
  603.              pauza();
  604.              shift.writeBit(22, HIGH);
  605.            }
  606.         if (c == 1)
  607.            {  
  608.              shift.writeBit(27, HIGH);
  609.              pauza();
  610.              shift.writeBit(31, HIGH);
  611.              pauza();
  612.              shift.writeBit(29, HIGH);
  613.              pauza();
  614.              shift.writeBit(30, HIGH);
  615.            }
  616.      }
  617.  
  618. void cinci(int c)
  619.      {
  620.         if (c == 4)
  621.            {  
  622.              shift.writeBit(1, HIGH);
  623.              pauza();
  624.              shift.writeBit(6, HIGH);
  625.              pauza();
  626.              shift.writeBit(7, HIGH);
  627.              pauza();
  628.              shift.writeBit(3, HIGH);
  629.              pauza();
  630.              shift.writeBit(4, HIGH);
  631.            }
  632.         if (c == 3)
  633.            {  
  634.              shift.writeBit(9, HIGH);
  635.              pauza();
  636.              shift.writeBit(14, HIGH);
  637.              pauza();
  638.              shift.writeBit(15, HIGH);
  639.              pauza();
  640.              shift.writeBit(11, HIGH);
  641.              pauza();
  642.              shift.writeBit(12, HIGH);
  643.            }
  644.         if (c == 2)
  645.            {  
  646.              shift.writeBit(20, HIGH);
  647.              pauza();
  648.              shift.writeBit(19, HIGH);
  649.              pauza();
  650.              shift.writeBit(23, HIGH);
  651.              pauza();
  652.              shift.writeBit(22, HIGH);
  653.              pauza();
  654.              shift.writeBit(17, HIGH);
  655.            }
  656.         if (c == 1)
  657.            {  
  658.              shift.writeBit(28, HIGH);
  659.              pauza();
  660.              shift.writeBit(27, HIGH);
  661.              pauza();
  662.              shift.writeBit(31, HIGH);
  663.              pauza();
  664.              shift.writeBit(30, HIGH);
  665.              pauza();
  666.              shift.writeBit(25, HIGH);
  667.            }
  668.      }
  669.      
  670. void sase(int c)
  671.      {
  672.         if (c == 4)
  673.            {  
  674.              shift.writeBit(1, HIGH);
  675.              pauza();
  676.              shift.writeBit(6, HIGH);
  677.              pauza();
  678.              shift.writeBit(5, HIGH);
  679.              pauza();
  680.              shift.writeBit(4, HIGH);
  681.              pauza();
  682.              shift.writeBit(3, HIGH);
  683.              pauza();
  684.              shift.writeBit(7, HIGH);
  685.            }
  686.         if (c == 3)
  687.            {  
  688.              shift.writeBit(9, HIGH);
  689.              pauza();
  690.              shift.writeBit(14, HIGH);
  691.              pauza();
  692.              shift.writeBit(13, HIGH);
  693.              pauza();
  694.              shift.writeBit(12, HIGH);
  695.              pauza();
  696.              shift.writeBit(11, HIGH);
  697.              pauza();
  698.              shift.writeBit(15, HIGH);
  699.            }
  700.             if (c == 2)
  701.            {  
  702.              shift.writeBit(20, HIGH);
  703.              pauza();
  704.              shift.writeBit(19, HIGH);
  705.              pauza();
  706.              shift.writeBit(18, HIGH);
  707.              pauza();
  708.              shift.writeBit(17, HIGH);
  709.              pauza();
  710.              shift.writeBit(22, HIGH);
  711.              pauza();
  712.              shift.writeBit(23, HIGH);
  713.            }
  714.             if (c == 1)
  715.            {  
  716.              shift.writeBit(28, HIGH);
  717.              pauza();
  718.              shift.writeBit(27, HIGH);
  719.              pauza();
  720.              shift.writeBit(26, HIGH);
  721.              pauza();
  722.              shift.writeBit(25, HIGH);
  723.              pauza();
  724.              shift.writeBit(30, HIGH);
  725.              pauza();
  726.              shift.writeBit(31, HIGH);
  727.            }
  728.      }    
  729.  
  730. void sapte(int c)
  731.      {
  732.         if (c == 4)
  733.            {  
  734.              shift.writeBit(1, HIGH);
  735.              pauza();
  736.              shift.writeBit(2, HIGH);
  737.              pauza();
  738.              shift.writeBit(3, HIGH);
  739.            }
  740.             if (c == 3)
  741.            {  
  742.              shift.writeBit(9, HIGH);
  743.              pauza();
  744.              shift.writeBit(10, HIGH);
  745.              pauza();
  746.              shift.writeBit(11, HIGH);
  747.            }
  748.             if (c == 2)
  749.            {  
  750.              shift.writeBit(20, HIGH);
  751.              pauza();
  752.              shift.writeBit(21, HIGH);
  753.              pauza();
  754.              shift.writeBit(22, HIGH);
  755.            }
  756.             if (c == 1)
  757.            {  
  758.              shift.writeBit(28, HIGH);
  759.              pauza();
  760.              shift.writeBit(29, HIGH);
  761.              pauza();
  762.              shift.writeBit(30, HIGH);
  763.            }
  764.      }    
  765.  
  766. void opt(int c)
  767.      {
  768.         if (c == 4)
  769.            {  
  770.              shift.writeBit(1, HIGH);
  771.              pauza();
  772.              shift.writeBit(2, HIGH);
  773.              pauza();
  774.              shift.writeBit(3, HIGH);
  775.              pauza();
  776.              shift.writeBit(4, HIGH);
  777.              pauza();
  778.              shift.writeBit(5, HIGH);
  779.              pauza();
  780.              shift.writeBit(6, HIGH);
  781.              pauza();
  782.              shift.writeBit(7, HIGH);
  783.            }
  784.         if (c == 3)
  785.            {  
  786.              shift.writeBit(9, HIGH);
  787.              pauza();
  788.              shift.writeBit(10, HIGH);
  789.              pauza();
  790.              shift.writeBit(11, HIGH);
  791.              pauza();
  792.              shift.writeBit(12, HIGH);
  793.              pauza();
  794.              shift.writeBit(13, HIGH);
  795.              pauza();
  796.              shift.writeBit(14, HIGH);
  797.              pauza();
  798.              shift.writeBit(15, HIGH);
  799.            }
  800.         if (c == 2)
  801.            {  
  802.              shift.writeBit(20, HIGH);
  803.              pauza();
  804.              shift.writeBit(21, HIGH);
  805.              pauza();
  806.              shift.writeBit(22, HIGH);
  807.              pauza();
  808.              shift.writeBit(17, HIGH);
  809.              pauza();
  810.              shift.writeBit(18, HIGH);
  811.              pauza();
  812.              shift.writeBit(19, HIGH);
  813.              pauza();
  814.              shift.writeBit(23, HIGH);
  815.            }
  816.         if (c == 1)
  817.            {  
  818.              shift.writeBit(28, HIGH);
  819.              pauza();
  820.              shift.writeBit(29, HIGH);
  821.              pauza();
  822.              shift.writeBit(30, HIGH);
  823.              pauza();
  824.              shift.writeBit(25, HIGH);
  825.              pauza();
  826.              shift.writeBit(26, HIGH);
  827.              pauza();
  828.              shift.writeBit(27, HIGH);
  829.              pauza();
  830.              shift.writeBit(31, HIGH);
  831.            }
  832.      }        
  833.  
  834. void noua(int c)
  835.      {
  836.         if (c == 4)
  837.            {
  838.              shift.writeBit(7, HIGH);
  839.              pauza();
  840.              shift.writeBit(6, HIGH);
  841.              pauza();
  842.              shift.writeBit(1, HIGH);
  843.              pauza();
  844.              shift.writeBit(2, HIGH);
  845.              pauza();
  846.              shift.writeBit(3, HIGH);
  847.              pauza();
  848.              shift.writeBit(4, HIGH);
  849.            }
  850.         if (c == 3)
  851.            {
  852.              shift.writeBit(15, HIGH);
  853.              pauza();
  854.              shift.writeBit(14, HIGH);
  855.              pauza();
  856.              shift.writeBit(9, HIGH);
  857.              pauza();
  858.              shift.writeBit(10, HIGH);
  859.              pauza();
  860.              shift.writeBit(11, HIGH);
  861.              pauza();
  862.              shift.writeBit(12, HIGH);
  863.            }
  864.         if (c == 2)
  865.            {
  866.              shift.writeBit(23, HIGH);
  867.              pauza();
  868.              shift.writeBit(19, HIGH);
  869.              pauza();
  870.              shift.writeBit(20, HIGH);
  871.              pauza();
  872.              shift.writeBit(21, HIGH);
  873.              pauza();
  874.              shift.writeBit(22, HIGH);
  875.              pauza();
  876.              shift.writeBit(17, HIGH);
  877.            }
  878.         if (c == 1)
  879.            {
  880.              shift.writeBit(31, HIGH);
  881.              pauza();
  882.              shift.writeBit(27, HIGH);
  883.              pauza();
  884.              shift.writeBit(28, HIGH);
  885.              pauza();
  886.              shift.writeBit(29, HIGH);
  887.              pauza();
  888.              shift.writeBit(30, HIGH);
  889.              pauza();
  890.              shift.writeBit(25, HIGH);
  891.            }
  892.      }  
  893.  
  894. void zero(int c)
  895.      {
  896.         if (c == 4)
  897.            {
  898.              shift.writeBit(1, HIGH);
  899.              pauza();
  900.              shift.writeBit(2, HIGH);
  901.              pauza();
  902.              shift.writeBit(3, HIGH);
  903.              pauza();
  904.              shift.writeBit(4, HIGH);
  905.              pauza();
  906.              shift.writeBit(5, HIGH);
  907.              pauza();
  908.              shift.writeBit(6, HIGH);
  909.            }
  910.         if (c == 3)
  911.            {
  912.              shift.writeBit(9, HIGH);
  913.              pauza();
  914.              shift.writeBit(10, HIGH);
  915.              pauza();
  916.              shift.writeBit(11, HIGH);
  917.              pauza();
  918.              shift.writeBit(12, HIGH);
  919.              pauza();
  920.              shift.writeBit(13, HIGH);
  921.              pauza();
  922.              shift.writeBit(14, HIGH);
  923.            }
  924.         if (c == 2)
  925.            {
  926.              shift.writeBit(20, HIGH);
  927.              pauza();
  928.              shift.writeBit(21, HIGH);
  929.              pauza();
  930.              shift.writeBit(22, HIGH);
  931.              pauza();
  932.              shift.writeBit(17, HIGH);
  933.              pauza();
  934.              shift.writeBit(18, HIGH);
  935.              pauza();
  936.              shift.writeBit(19, HIGH);
  937.            }
  938.         if (c == 1)
  939.            {
  940.              shift.writeBit(28, HIGH);
  941.              pauza();
  942.              shift.writeBit(29, HIGH);
  943.              pauza();
  944.              shift.writeBit(30, HIGH);
  945.              pauza();
  946.              shift.writeBit(25, HIGH);
  947.              pauza();
  948.              shift.writeBit(26, HIGH);
  949.              pauza();
  950.              shift.writeBit(27, HIGH);
  951.            }
  952.      }  
Advertisement
RAW Paste Data Copied
Advertisement