Serial interrupt application instance

xiaoxiao2021-03-06  24

#include

#define uchar unsigned char

#define uint unsigned int

UINT J = 0;

UINT NUM = 0;

Uchar SL, SH, ML, MH, HL, HH;

Uchar code x [13] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ': ', 0x0d, 0x0a};

/ / -------------------------------------------------------------------------------------------- --------------------------------------------

Void Time0_INT () Interrupt 1 Using 1

{

TH0 = (65536-40000) / 256;

TL0 = (65536-40000)% 256;

Num ;

IF (NUM> 50)

{

Num = 0; SL ;

IF (SL> 9)

{

SL = 0; SH ;

IF (SH> 5)

{

SH = 0; ml ;

IF (ml> 9)

{

ML = 0; MH ;

IF (MH> 5)

{

MH = 0; HL ;

IF (HL> 9)

{

HL = 0; HH ;

IF (hh> 5)

HH = 0;

}

}

}

}

}

SBUF = x [hh];

While (ti == 0);

Ti = 0;

SBUF = x [HL];

While (ti == 0);

Ti = 0;

SBUF = x [10];

While (ti == 0);

Ti = 0;

SBUF = x [MH];

While (ti == 0);

Ti = 0;

SBUF = x [ml];

While (ti == 0);

Ti = 0;

SBUF = x [10];

While (ti == 0);

Ti = 0;

SBUF = x [sh];

While (ti == 0);

Ti = 0;

SBUF = x [sl];

While (ti == 0);

Ti = 0;

SBUF = x [11];

While (ti == 0);

Ti = 0;

SBUF = x [12];

While (ti == 0);

Ti = 0;

}

}

/ / -------------------------------------------------------------------------------------------- -------------------------------------------------- ----

Main ()

{

TMOD = 0x21;

TH0 = (65536-40000) / 256; // 20ms interrupt cycle, a total of 3000 times, showing 1 minute

TL0 = (65536-40000)% 256;

TL1 = 0xFD;

TH1 = 0xFD;

SCON = 0xD8;

PCON = 0x00;

EA = 1;

ET0 = 1;

Tr0 = 1;

TR1 = 1;

While (1);

}

转载请注明原文地址:https://www.9cbs.com/read-79507.html

New Post(0)