?? mb1504.c
字號:
#include "mb1504.h"
void Send16Bit( unsigned int SendData )
{
unsigned char i;
unsigned int SendMiddle;
SendMiddle = SendData;
LE_L ;
CLK_L;
for( i = 0; i < 16; i ++ )
{
if ( SendMiddle & 0x8000 )
DATA_H ;
else DATA_L;
_NOP(); CLK_H;
_NOP(); CLK_L;
SendMiddle = SendMiddle << 1;
}
LE_H; _NOP(); LE_L;
}
void Send11Bit( unsigned int SendData )
{
unsigned char i;
unsigned int SendMiddle;
SendMiddle = SendData;
LE_L; CLK_L;
for( i = 0; i < 11; i ++ )
{
if( SendMiddle & 0x8000 )
DATA_H;
else DATA_L;
_NOP(); CLK_H;
_NOP(); CLK_L;
SendMiddle = SendMiddle << 1;
}
}
void Send8Bit( unsigned char SendData )
{
unsigned char i;
unsigned char SendMiddle;
SendMiddle = SendData;
for( i = 0; i < 8; i ++ )
{
if( SendMiddle & 0x80 )
DATA_H;
else DATA_L;
_NOP(); CLK_H;
_NOP(); CLK_L;
SendMiddle = SendMiddle << 1;
}
LE_H; _NOP(); LE_L;
}
void SendReferF( void )
{ //針對晶體 采用 12M
Send16Bit( 0x8961 ); // 12M Crystal
}
void FrequenceToSend( unsigned int FrequenceD )
{
unsigned char AD = 0; // i = 0;
unsigned int ND = 0, MiddleF = 2000;
if( ( FrequenceD >= 800 ) && ( FrequenceD <= 6000 ) )
{ // 限制 鎖定頻率范圍
MiddleF = FrequenceD;
ND = ( unsigned int ) ( MiddleF / 32 );
AD = ( unsigned char ) ( MiddleF % 32 );
ND = ND << 5; AD = AD << 1; AD = AD & 0xef;
Send11Bit( ND ); Send8Bit( AD );
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -