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

📄 pwm.txt

📁 C8051F005的PWM脉冲调制
💻 TXT
字号:

#include <c8051f000.h>
#include <stdio.h>
#include <intrins.h>
#define PWM 0x80 // 设置占空比50% 
void main(void )
   {
 unsigned char a;
 unsigned int b;
 WDTCN = 0xde;    // 禁止看门狗定时器
 WDTCN = 0xad;
 OSCICN = 0x07;    // 设置SYSCLK到16MHz,内部振荡器。
 PORT_Init ();
  PCA_Init ();
  while (1) 
 {
  PCON |= 0x01;   // 设置等待方式
 }
 
}
//--------------------------------------------------------------------
//配置I/O端口
//--------------------------------------------------------------------
void PORT_Init (void)
{
   XBR0     = 0x08;   //CEX0-->P0.0
   XBR2     = 0x40;       //使能交叉开关和弱闪拉
   PRT0CF  |= 0x01;      //使能P0.0脚推挽输出

}
//--------------------------------------------------------------------
//配置PCA的CEX0输出8位PWM信号
// PCA时基= SYSCLK / 4
//--------------------------------------------------------------------
void PCA_Init (void)
{
    PCA0MD = 0x02;   // 禁止CF中断
    PCA0CN = 0x40; // 允许PCA计数器
    PCA0CPM0  = 0x42; // PWM0为8位PWM方式
    PCA0CPL0  = PWM; // 初始化PCA的PWM值
    PCA0CPH0  = PWM;
}


⌨️ 快捷键说明

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