mc145162_driver.c
来自「MB1504锁相环芯片的51单片机驱动程序,可以根据需要修改合适的分频值来完成频」· C语言 代码 · 共 96 行
C
96 行
#include "reg52.h"
#include "user.h"
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
sbit en =P3^2;
sbit dat=P3^3;
sbit clk=P3^4;
sbit beep=P2^2;
void init_control_reg()
{
uchar temp;
uchar i;
temp=0x88;
en=1;
clk=0;
for(i=0;i<8;i++)
{
if(temp & 0x80)
dat=1;
else
dat=0;
clk=1;
temp<<=1;
clk=0;
}
en=0;
}
void init_reference_reg()
{
ulong temp=0x35004000;
uchar i;
en=1;
clk=0;
for(i=0;i<32;i++)
{
if(temp & 0x80000000)
dat=1;
else
dat=0;
clk=1;
temp<<=1;
clk=0;
}
en=0;
}
void write_counter_reg(ulong TX,ulong RX)
{
ulong temp;
uchar i;
temp=(TX<<16)|RX;
en=0;
clk=0;
for(i=0;i<31;i++)
{
if(temp & 0x80000000)
dat=1;
else
dat=0;
clk=1;
temp<<=1;
clk=0;
}
if(temp & 0x80000000)
dat=1;
else
dat=0;
clk=1;
en=1;
clk=0;
en=0;
}
void write_pll(uint TX,uint RX)
{
uint TX_temp,RX_temp;
TX_temp=TX/5;
RX_temp=RX/5;
write_counter_reg(TX_temp,RX_temp);
}
void main()
{
delay(20);
init_control_reg();
init_reference_reg();
write_pll(29600,40300);
while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?