EasyManua.ls Logo

STC micro STC8A8K64D4 Series - P1 Rising Edge Interrupt

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
- 268 -
12.2.2 P1 rising edge interrupt
C language code
;Operating frequency for test is 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr P0M0 = 0x94;
sfr P0M1 = 0x93;
sfr P1M0 = 0x92;
sfr P1M1 = 0x91;
sfr P2M0 = 0x96;
sfr P2M1 = 0x95;
sfr P3M0 = 0xb2;
sfr P3M1 = 0xb1;
sfr P4M0 = 0xb4;
sfr P4M1 = 0xb3;
sfr P5M0 = 0xca;
sfr P5M1 = 0xc9;
sfr P6M0 = 0xcc;
sfr P6M1 = 0xcb;
sfr P7M0 = 0xe2;
sfr P7M1 = 0xe1;
sfr P_SW2 = 0xba;
#define P1INTE (*(unsigned char volatile xdata *)0xfd01)
#define P1INTF (*(unsigned char volatile xdata *)0xfd11)
#define P1IM0 (*(unsigned char volatile xdata *)0xfd21)
#define P1IM1 (*(unsigned char volatile xdata *)0xfd31)
void main()
{
P0M0 = 0x00;
P0M1 = 0x00;
P1M0 = 0x00;
P1M1 = 0x00;
P2M0 = 0x00;
P2M1 = 0x00;
P3M0 = 0x00;
P3M1 = 0x00;
P4M0 = 0x00;
P4M1 = 0x00;
P5M0 = 0x00;
P5M1 = 0x00;
P_SW2 |= 0x80;
P1IM0 = 0xff; //
Rising edge interrupt
P1IM1 = 0x00;
P1INTE = 0xff; // Enable P1 interrupt
P_SW2 &= ~0x80;
EA = 1;

Table of Contents

Related product manuals