EasyManua.ls Logo

STC micro STC8A8K64D4 Series - Timer 0 (Pulse Width Measurement for High-Level Width of INT0)

Default Icon
901 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
STC8A8K64D4 Series Manual
- 304 -
CPL P1.0 ;Test port
RETI
MAIN:
MOV SP, #5FH
MOV P0M0, #00H
MOV P0M1, #00H
MOV P1M0, #00H
MOV P1M1, #00H
MOV P2M0, #00H
MOV P2M1, #00H
MOV P3M0, #00H
MOV P3M1, #00H
MOV P4M0, #00H
MOV P4M1, #00H
MOV P5M0, #00H
MOV P5M1, #00H
MOV TMOD,#04H ;External counting mode
MOV TL0,#0FFH
MOV TH0,#0FFH
SETB TR0 ;Start timer
SETB ET0 ;Enable timer interrupt
SETB EA
JMP $
END
13.5.6 Timer 0 (Pulse width measurement for high-level width of INT0)
C language code
//Operating frequency for test is 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr AUXR = 0x8e;
sfr P0M1 = 0x93;
sfr P0M0 = 0x94;
sfr P1M1 = 0x91;
sfr P1M0 = 0x92;
sfr P2M1 = 0x95;
sfr P2M0 = 0x96;
sfr P3M1 = 0xb1;
sfr P3M0 = 0xb2;
sfr P4M1 = 0xb3;
sfr P4M0 = 0xb4;
sfr P5M1 = 0xc9;
sfr P5M0 = 0xca;
void INT0_Isr() interrupt 0
{
P0 = TL0; //TL0 is the low byte of the measured value

Table of Contents

Related product manuals