📄 senddatapll.c
字号:
#include <pic.h>
#include "radio.h"
#include "delay.h"
#define CSynClk 0
#define CSynStr 1
#define CSynData 2
void funcDataToPLL(unsigned char LVPLLA,unsigned char loop)
{
unsigned char i;
funcBitClr(PORTA, CSynStr);
for(i=0;i<loop;i++)
{
funcBitClr(PORTA,CSynClk);
//funcBitClr(PORTA,CSynData);
if(LVPLLA&0x01)
funcBitSet(PORTA,CSynData);
else
funcBitClr(PORTA,CSynData);
DelayUs(2);
funcBitSet(PORTA,CSynClk);
//DelayUs(2);
LVPLLA>>=1;
}
funcBitClr(PORTA,CSynClk);
funcBitClr(PORTA,CSynData);
}
void funcPllLock(void)
{
funcBitSet(PORTA, CSynStr);
DelayUs(2);
funcBitClr(PORTA, CSynStr);
}
unsigned char funcWritePLL(void)
{
unsigned char i;
if(BTxRx)
{
VPllN_Rx=VPllN+66;
VPllA_Rx=VPllA+27;
if(VPllA_Rx>=32)
{
VPllN_Rx+=1;
VPllA_Rx-=32;
}
for(i=0;i<10;i++)
{
funcDataToPLL(VPllA_Rx, 5);
funcDataToPLL(VPllN_Rx, 8);
funcDataToPLL(0x00, 4);
funcDataToPLL(CPLLSetFreq,2); //frequency code
funcPllLock();
DelayMs(20);
if(PORTB&(1<<CLD))
break;
}
}
else
{
for(i=0;i<10;i++)
{
funcDataToPLL(VPllA, 5);
funcDataToPLL(VPllN, 8);
funcDataToPLL(0x00, 4);
funcDataToPLL(CPLLSetFreq, 2); //frequency code
funcPllLock();
DelayMs(20);
if(PORTB&(1<<CLD))
break;
}
}
if(VDispMode !=CDisModeHot)
{
if(i==10)
{
VDispMode=CDisModeLoc;
}
else
{
VDispMode=lvDispMode;
}
}
return(i);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -