Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <REGX52.H>
- #include <intrins.h>
- #define TRUE 1
- unsigned char code cyfry[] = {0x3F, 0x06, 0X5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
- unsigned char data jednostki=0, dziesiatki=0;
- bit flaga = 0;
- ///////////////////////////////////////////
- void on_of() interrupt 0
- {
- if(flaga == 0) flaga =1;
- else flaga = 0;
- }
- void inkrementacja() interrupt 2
- {
- jednostki++;
- if(jednostki==10){
- dziesiatki++;
- jednostki=0;
- }
- }
- ///////////////////////////////////////////
- void opoznienie(unsigned char ms)
- {
- unsigned long us = 1000*ms;
- while (us--)
- _nop_();
- }
- void wyswietlanie()
- {
- if (flaga==1)
- {
- P3_7=1;
- P1 = cyfry[dziesiatki];
- P3_7=0;
- opoznienie(1);
- P3_6=1;
- P1 = cyfry[jednostki];
- P3_6=0;
- opoznienie(1);
- }
- else{
- P3_6=1;
- P3_7=1;
- P1=0;
- }
- }
- //////////////////////////////////////////
- void przerwania()
- {
- EA = 1;
- EX0 = 1;
- EX1 = 1;
- IT0 = 1;
- IT1 = 1;
- }
- //////////////////////////////////////////
- int main()
- {
- przerwania();
- while (TRUE)
- {
- wyswietlanie();
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement