#include <STC12C5A60S2.h>
#define uchar unsigned char
#define uint unsigned int
sbit wr=P3^6;
void choose(bit gate,uchar which)
{
if(gate) wr=0;
else wr=1;
switch(which)
{
case 4:P2=0x80;break;
case 5:P2=0xa0;break;
case 6:P2=0xc0;break;
case 7:P2=0xe0;break;
default: break;
}
}
void PWM_init()
{
CMOD=0X84;
CCON=0X00;
CCAP0H=0x00;
CCAP0L=0x00;
CCAPM0=0X42;
CL=0;CH=0;
PCA_PWM0=0X00;
CCAP1H=0x80;
CCAP1L=0x80;
CCAPM1=0X42;
}
void main()
{
choose(1,5); //屏蔽蜂鸣器、继电器
P0=0x00;
choose(0,5);
choose(1,4); //屏蔽led
P0=0xff;
choose(0,4);
choose(1,7); //屏蔽数码管
P0=0xff;
choose(0,7);
choose(1,6);
P0=0x00;
choose(0,6);
PWM_init();
CR=1;
while(1);
}