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

📄 init.c

📁 占空比测量
💻 C
字号:
/*********************************************************************/
//系统时钟、端口、AD、DA、TIMER、PCA初始化
/*********************************************************************/
#include<C8051F000.h>
#include<define.h>
void SYSCLK_Init()
{
	OSCICN=OSCICN|0x03;							//启用内部晶振16MHZ
}
void PORT_Init()
{
	XBR0=0x10;									//连接CEX0、CEX1
	XBR1=0x00;
	XBR2=0x40;
	PRT0CF=0xFF;								//PO推挽输出
}
/*void ADC_Init()
{
	ADC0CN=0x05;								//ADC0禁止定时器3触发左对齐
	REF0CN=0x07;								//允许温度传感器工作
	AMX0SL|=0x00;								//选择通道0作为AD输入
	ADC0CF=0x80;								//分频系数(为16〕与增益(为2)设置
	EIE2|=0x02;									//允许ADC中断
}
void DAC0_Init()
{
	DAC0CN=0x84;								//DAC允许,左对齐方式
}
void Timer3_Init(unsigned int counts)
{
	TMR3CN=0x02;								//停止定时器3,清除TF3,系统时钟为时基
	TMR3RL=~counts+1;							//赋初值 
	TMR3=TMR3RL;
	EIE2&=!0x01;								//关T3中断
	TMR3CN|=0x04;								//启动T3
}*/
void PCA_Init()
{
	
	PCA0MD=0x02;								//CPU等待时PCA0正常工作;系统时钟的1/4为计数脉冲源溢出中断禁止
	PCA0CPM0=0x02;								//模块0:8位脉宽调制方式、脉宽调制允许、电平切换匹配中断禁止
	PCA0CPM1=0x02;								//模块1
//	EIE1|=0x08;									//允许PCA0中断
	CR=0;										//关PCA0
}
void space_rate(unsigned char space)			//占空比设定	
{
	PCA0CPL0=space;								
	PCA0CPH0=space;							
	PCA0CPL1=space;								
	PCA0CPH1=space;								

}

⌨️ 快捷键说明

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