Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <lcd.h>
- #include <reg515.sfr>
- unsigned char znak='\0';
- unsigned int kod_znaku;
- unsigned char poprzedni_znak='\0';
- int zerowanie=0,zerowanie2=1;
- int wypisano=0;
- int licznik=0;
- unsigned int liczba=0;
- void main(void)
- {
- int a;
- //IEN0=160;
- //T2CON=17;
- T2R1=1;
- T2I0=1;
- CCEN=8;
- TH2=0xFF;
- TL2=0;
- CLK=1;
- P3=0xDF;
- CRCH=0xFF;
- CRCL=0x00;
- CCH1=0xFF;
- CCL1=(0xFF*20)/100;
- lcd_init();
- out_instr(0x01);
- out_char('2');
- out_char('0');
- while(1)
- {
- znak=get_kb();
- if(znak=='\0')
- {
- wypisano=0;
- }
- kod_znaku=(unsigned int)znak;
- if (znak!='\0'&&wypisano==0 && kod_znaku>=48 && kod_znaku <=57 && (licznik<4 || zerowanie==1))
- {
- if(zerowanie2==1)
- {
- out_instr(0x01);
- zerowanie2=0;
- }
- if(zerowanie==1)
- {
- out_instr(0x01);
- zerowanie=0;
- licznik=0;
- liczba=0;
- }
- out_char(znak);
- znak='\0';
- wypisano=1;
- liczba=liczba*10+kod_znaku-48;
- for(a=0;a<=20000;a++)
- {
- }
- licznik++;
- }
- if (znak!='\0' && znak=='e' &&zerowanie==0 && liczba>0)
- {
- if(liczba > 14 && liczba < 99)
- {
- CCL1 = (0xFF*liczba)/100;
- zerowanie=1;
- }
- else
- {
- out_instr(0x01);
- out_char('2');
- out_char('0');
- CCL1 = (0xFF*20)/100;
- zerowanie=1;
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment