📄 ctrlpll4136.c
字号:
/*********************************************************************
* 版权所有 (C)2005, 深圳市中兴通讯股份有限公司。
*
* 文件名称: // CtrlPLL4136.c
* 文件标识: // 见配置管理计划书
* 内容摘要: // 锁相环的控制(si4136) 简要描述本文件的内容,包括主要模块、函数及其功能的说明
* 其它说明: // 其它内容的说明
* 当前版本: // 输入当前版本
* 作 者: // 输入作者名字及单位
* 完成日期: // 输入完成日期,例:2000年2月25日
*
* 修改记录1:// 修改历史记录,包括修改日期、修改者及修改内容
* 修改日期:
* 版 本 号:
* 修 改 人:
* 修改内容:
* 修改记录2:…
**********************************************************************/
#include<aduc841.h>
//#include "MacroDef.h"
/**************************************************************************
* 函数名称: OutputPll4136()
* 功能描述: 设置PLL4136
* 输入参数:
* 输出参数:
* 返 回 值:
* 其它说明:
* 修改日期 版本号 修改人 修改内容
* -----------------------------------------------
* 07/05/2005 V1.0 XXXX XXXX
**************************************************************************/
/*void OutputPll4136(unsigned int nn,unsigned char ucCHN)
{
unsigned long xdata Confg,PdGain,RFON_IFOFF,N1,N,R;
unsigned char ucPortData;
unsigned char ucChooseChn;
Confg = 0x030000; //主配置,XIN除2模式,软件控制电源,地址0000
PdGain = 0x0C1; //鉴相器增益,地址0001
RFON_IFOFF = 0x012; //RF电路开,IF关,地址0010
// R = 0x607; //R=13/0.2
//参考频率修改为10M
R = 0x327;
N1 = nn >> 2; //950=频率偏190M*5,计算N寄存器的值
N1 = N1 << 4;
N = N1 | 0x04; //查PLL资料
if (SFU_UP_PLL == ucCHN)//up pll
{
ucChooseChn = 0x20;
}
else
{
ucChooseChn = 0x40;
}
//-------------------------------------------------------------------
ucPortData = READPORT(0x21,0x00);
ucPortData = ucPortData | ucChooseChn;
//-------------------------------------------------------------------
SETPORT(0x21,0x00,ucPortData); //开启PLL锁相环使能
SPITOPLL(Confg);
SETPORT(0x21,0x00,0x00); //关闭PLL锁相环使能
//-------------------------------------------------------------------
SETPORT(0x21,0x00,ucPortData); //开启PLL锁相环使能
SPITOPLL(PdGain);
SETPORT(0x21,0x00,0x00); //关闭PLL锁相环使能
//-------------------------------------------------------------------
SETPORT(0x21,0x00,ucPortData); //开启PLL锁相环使能
SPITOPLL(RFON_IFOFF);
SETPORT(0x21,0x00,0x00); //关闭PLL锁相环使能
//-------------------------------------------------------------------
SETPORT(0x21,0x00,ucPortData); //开启PLL锁相环使能
SPITOPLL(N);
SETPORT(0x21,0x00,0x00); //关闭PLL锁相环使能
//-------------------------------------------------------------------
SETPORT(0x21,0x00,ucPortData); //开启PLL锁相环使能
SPITOPLL(R);
SETPORT(0x21,0x00,0x00); //关闭PLL锁相环使能
}
/**************************************************************************
* 函数名称: SetPll4136()
* 功能描述: 写PLL4136的一个控制字
* 输入参数:
* 输出参数:
* 返 回 值:
* 其它说明:
* 修改日期 版本号 修改人 修改内容
* -----------------------------------------------
* 07/05/2005 V1.0 XXXX XXXX
**************************************************************************/
//void SetPll4136(unsigned long lPLLData)
//{
// SETPORT(0x21,0x00,0x20); /*开启PLL锁相环使能*/
//
// SPITOPLL(lPLLData);
//
// SETPORT(0x21,0x00,0x00); /*关闭PLL锁相环使能 */
//}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -