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

📄 ctrlpll4136.c

📁 基于单片机Aduc841的调试程序
💻 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 + -