Guest User

Untitled

a guest
Aug 19th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.92 KB | None | 0 0
  1. #include <lcd.h>
  2. #include <reg515.sfr>
  3. unsigned char znak='\0';
  4. unsigned int kod_znaku;
  5. unsigned char poprzedni_znak='\0';
  6. int zerowanie=0,zerowanie2=1;
  7. int wypisano=0;
  8. int licznik=0;
  9. unsigned int liczba=0;
  10.  
  11.  
  12. void main(void)
  13. {
  14. int a;
  15. //IEN0=160;
  16. //T2CON=17;
  17.  
  18. T2R1=1;
  19. T2I0=1;
  20. CCEN=8;
  21. TH2=0xFF;
  22. TL2=0;
  23. CLK=1;
  24. P3=0xDF;
  25.  
  26. CRCH=0xFF;
  27. CRCL=0x00;
  28. CCH1=0xFF;
  29. CCL1=(0xFF*20)/100;
  30.  
  31. lcd_init();
  32. out_instr(0x01);
  33. out_char('2');
  34. out_char('0');
  35.        while(1)
  36.        {
  37.        znak=get_kb();
  38.        if(znak=='\0')
  39.        {
  40.        wypisano=0;
  41.        }
  42.        kod_znaku=(unsigned int)znak;
  43.                if (znak!='\0'&&wypisano==0  && kod_znaku>=48 && kod_znaku <=57 && (licznik<4 || zerowanie==1))
  44.                {
  45.                   if(zerowanie2==1)
  46.                   {
  47.                   out_instr(0x01);
  48.                   zerowanie2=0;
  49.                   }
  50.                   if(zerowanie==1)
  51.                        {
  52.                          out_instr(0x01);
  53.                          zerowanie=0;
  54.                          licznik=0;
  55.                          liczba=0;
  56.                        }
  57.                  out_char(znak);
  58.                  znak='\0';
  59.                  wypisano=1;
  60.                  liczba=liczba*10+kod_znaku-48;
  61.                  for(a=0;a<=20000;a++)
  62.                  {
  63.                  }
  64.                  licznik++;
  65.  
  66.  
  67.                }
  68.                if (znak!='\0' && znak=='e' &&zerowanie==0 && liczba>0)
  69.                {
  70.  
  71.                 if(liczba > 14 && liczba < 99)
  72.                 {
  73.                        CCL1 = (0xFF*liczba)/100;
  74.                        zerowanie=1;
  75.                }
  76.                 else
  77.                 {
  78.                        out_instr(0x01);
  79.                        out_char('2');
  80.                        out_char('0');
  81.                        CCL1 = (0xFF*20)/100;
  82.                        zerowanie=1;
  83.  
  84.                 }
  85.  
  86.  
  87.                }
  88.        }
  89. }
Add Comment
Please, Sign In to add comment