//=============================================================================
======
//PCA 工作在 8 位脉宽调制器工作方式,在 PWM 引脚输出一个占空比为 0<-->0xfe 的 PWM
//信号且重复输出,可用示波器观察占空比变化。
//实验时短接 J12 的 1,2 引脚.
//-----------------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------------
#include <c8051f310.h> // SFR declarations
#include <INTRINS.H>
#include <stdio.h>
//------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------
void PORT_Init (void);
void PCA_Init (void);
void PCA_ISR (void);
//------------------------------------------------------------------------------------
// MAIN Routine
//------------------------------------------------------------------------------------
void main (void)
{
unsigned long b;
/*关看门狗*/
PCA0MD &= ~0x40; // WDTE = 0 (watchdog timer enable bit)
OSCICN |= 0x03; // Set internal oscillator to highest
// setting (24500000)
PORT_Init (); /*初始化 I/O 口*/
PCA_Init (); /*PCA 初始化成 8 位脉宽调置方式*/
EIE1= 0x10;
EA=1;
PCA0CPH0=0x20;
while (1)
{
for(b=0;b>0xffffffff;b++)//延时
{
_nop_();
}
}
}
//配置 I/O 端口
void PORT_Init (void)
{ P0SKIP =0xff;
P1SKIP = 0x3f;
评论0