⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c8051f020pca.c

📁 基于c8051f020的pca代码
💻 C
字号:
#include<c8051f020.h>
#include<intrins.h>

#define uchar unsigned char
#define uint  unsigned int

void delay_us(uchar i)	 //延时【(us+1)*6+2】/12个微秒
{
  while(i--);
}

void delay_ms(uchar ms)	 //约延时1.002*ms个毫秒
{
  uchar i;
  while(ms--)
  for(i=0;i<89;i++)	 //for循环约延时1002微秒
  delay_us(19);	   //延时约10.166667微妙
}

void Init_C8051F020()
{
  uchar n;
  WDTCN=0XDE; //禁用看门狗
  WDTCN=0XAD;

  XBR0=0X28;  //将CEX0配置到P0.0,CEX1配置到P0.1,CEX2配置到P0.2,依次到CEX4
  XBR1=0X00;
  XBR2=0XC0;

  P0MDOUT=0X00;
  P1MDIN =0XFF;
  P1MDOUT=0X00;
  P2MDOUT=0X00;
  P2MDOUT=0X00;

  OSCICN=0X04;
 /* OSCXCN=0X67;
  for(n=0;n<255;n++)	   //等待晶振稳定
  while((OSCXCN&0X80)==0);
  OSCICN=0X08; //选择外部振荡器	*/
}

void Config_PCA()
{
   PCA0MD=0X80;

   PCA0CPM0=0X10; //模块0工作在负延捕捉方式
   PCA0CPM1=0X48; //模块1工作在软件定时器方式
   PCA0CPM2=0X4C; //模块2工作在高速输出方式
   PCA0CPM3=0X46; //模块3工作在频率输出方式
   PCA0CPM4=0XC2; //模块4工作在16位PWM方式

   PCA0CPL4=0X00;
   PCA0CPH4=0X80;
}

void main(void)
{
  Init_C8051F020();
  Config_PCA();

  CR=1;

  while(1)
  {
    delay_ms(10);
  }
}







































⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -