?? time3.c
字號:
#include <c8051f020.h>
#define uint8 unsigned char
#define uint16 unsigned int
//#define time 2000 //時間=(time/1000)s
uint16 flag;
uint16 time=100;
void SYSCLK_Init(void)
{
uint8 i;
OSCXCN = 0X67;//開始外部22.1184M晶振
for(i = 0;i < 128;i++); //等待外部起振
while(!(OSCXCN & 0X80)); //查詢標志位
OSCICN = 0X88;//用外部晶振,并使能時鐘丟
}
void Init_Timer3(void)
{
TMR3CN=0X00;
TMR3RLL=0X0cd;
TMR3RLH=0X0f8;
//TMR3L=0X0ff;
//TMR3H=0X0ff;
TMR3CN|=0X04;
EIE2|=0X01;
}
void Init_PORT(void)
{
XBR2=0X40;
//P0MDOUT=0XFF;
//P74OUT=0X04;
P74OUT=0Xff;
P5=0X00;
//P0=0xff;
}
void Timer3_ISR(void) interrupt 14
{
TMR3CN&=0X7F;
flag++;
if(flag==time)
{
P5=~P5;
time=time+100;
if(time>=65000)
time=100;
flag=0;
}
}
void main(void)
{
WDTCN = 0xde;
WDTCN = 0xad;//關閉看門狗
SYSCLK_Init();
Init_PORT();
Init_Timer3();
EA=1;
while(1)
{
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -