吃错药的老鼠 发表于 2021-4-26 19:20:20

关于arduino控制锁相环的问题

最近在做PLL收音机,用LC72131芯片,现在在控制代码上有问题,表现为PLL芯片没有任何反应,不管如何输入控制数据。调谐电压输出始终不改变,芯片的管脚没有任何信号输出(比如那个相位差的脉冲也检测不到,请问大家这是为什么

吃错药的老鼠 发表于 2021-4-26 19:20:48

[ 本帖最后由 吃错药的老鼠 于 2021-4-26 19:29 编辑 ]\n\nvoid IN1(){   //write in1 data and config to PLL chip as in1 mode
dw(CE,0);dw(CL,0);delayMicroseconds(t);
for(int i=0;i<8;++i){
    dw(DI,in1_addr);dw(CL,0);delayMicroseconds(t);dw(CL,1);delayMicroseconds(t);
    }
dw(CL,0);
delayMicroseconds(t);
dw(CE,1);
delayMicroseconds(t);
for(int i=0;i<24;++i){
    dw(DI,in1_data);dw(CL,0);delayMicroseconds(t);dw(CL,1);delayMicroseconds(t);
    }
dw(CE,0);dw(CL,0);dw(DI,0);
}


这里的dw就是digitalWrite的意思,微秒延时的t=50,每个脉冲宽50us

吃错药的老鼠 发表于 2021-4-26 19:21:21

本帖最后由 吃错药的老鼠 于 2021-4-26 19:30 编辑

bool in1_data={0},in2_data={0},out_data={0};
bool in1_addr={0,0,0,1,0,1,0,0};
bool in2_addr={1,0,0,1,0,1,0,0};
bool out_addr={0,1,0,1,0,1,0,0};


这几个就是in1和in2的地址

吃错药的老鼠 发表于 2021-4-26 19:21:42

#define pm pinMode
#define dw digitalWrite
#define dr digitalRead
#define ar analogRead

吃错药的老鼠 发表于 2021-4-26 21:36:13

现在PD引脚都没有脉冲输出,是不是我的程序有问题?

bfzy196167366 发表于 2021-4-30 19:30:19

看不懂这个程序,你继续折腾,支持你使用Arduino控制LC72131,我觉得51单片机可以控制,那么Arduino同样可以控制,就是程序上,我一窍不通,只会烧录,:lol

吃错药的老鼠 发表于 2021-4-30 22:49:21

bfzy196167366 发表于 2021-4-30 19:30
看不懂这个程序,你继续折腾,支持你使用Arduino控制LC72131,我觉得51单片机可以控制,那么Arduino同样可 ...

现在已经没问题啦

chason4752 发表于 2021-5-1 08:28:34

恐怕这跟“锁相环”没什么关系,大概是自动调谐系统出了问题,如果不是硬件问题,那就是软件设计不当吧?

hjuna 发表于 2021-11-4 11:50:03

吃错药的老鼠 发表于 2021-4-30 22:49
现在已经没问题啦

是什么问题,找到了?

吃错药的老鼠 发表于 2021-11-18 22:21:18

hjuna 发表于 2021-11-4 11:50
是什么问题,找到了?

是数据脉冲宽度的问题,板子上也有下拉电阻不能太小
页: [1]
查看完整版本: 关于arduino控制锁相环的问题