完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,我在进行AD9361的配置上面出现了如下的问题:
1.Calibration TIMEOUT (0x5E, 0x80) clk_set_rate,source:3,phy->clks[source]->rate:983040000 //3为BBPLL_REF_CLK 我的分析:从Calibration TIMEOUT 上看是因为时钟没有锁定,但是后面后面可以看见时钟其实已经起来了,我想问的是,这个时钟是不是我配置的时钟还是我输入进去的时钟?因为AD9361_InitParam default_init_param里面有这个时钟。 2.Calibration TIMEOUT (0x244, 0x80) ad9361_init : AD9361 initialization error 我的分析:从程序是看是CLKRF_CLK没有配置好,但是具体原因是什么呢? 配置如下: 1.20MHZ 1.25v的幅度输入 2.TDD模式 3.AD9361_InitParam default_init_param = { /* Reference Clock */ 20000000UL, //reference_clk_rate /* Base Configuration */ 1, //two_rx_two_tx_mode_enable *** adi,2rx-2tx-mode-enable 1, //frequency_division_duplex_mode_enable *** adi,frequency-division-duplex-mode-enable 0, //tdd_use_dual_synth_mode_enable *** adi,tdd-use-dual-synth-mode-enable 0, //tdd_skip_vco_cal_enable *** adi,tdd-skip-vco-cal-enable 0, //tx_fastlock_delay_ns *** adi,tx-fastlock-delay-ns 0, //rx_fastlock_delay_ns *** adi,rx-fastlock-delay-ns 0, //rx_fastlock_pincontrol_enable *** adi,rx-fastlock-pincontrol-enable 0, //tx_fastlock_pincontrol_enable *** adi,tx-fastlock-pincontrol-enable 0, //external_rx_lo_enable *** adi,external-rx-lo-enable 0, //external_tx_lo_enable *** adi,external-tx-lo-enable 5, //dc_offset_tracking_update_event_mask *** adi,dc-offset-tracking-update-event-mask 6, //dc_offset_attenuation_high_range *** adi,dc-offset-tracking-update-event-mask 5, //dc_offset_attenuation_low_range *** adi,dc-offset-tracking-update-event-mask 0x28, //dc_offset_count_high_range *** adi,dc-offset-tracking-update-event-mask 0x32, //dc_offset_count_low_range *** adi,dc-offset-tracking-update-event-mask 0, //tdd_use_fdd_vco_tables_enable *** adi,tdd-use-fdd-vco-tables-enable 0, //split_gain_table_mode_enable *** adi,split-gain-table-mode-enable /* ENSM Control */ 0, //ensm_enable_pin_pulse_mode_enable *** adi,ensm-enable-pin-pulse-mode-enable 0, //ensm_enable_txnrx_control_enable *** adi,ensm-enable-txnrx-control-enable /* LO Control */ 2400000000UL, //rx_synthesizer_frequency_hz *** adi,rx-synthesizer-frequency-hz 2400000000UL, //tx_synthesizer_frequency_hz *** adi,tx-synthesizer-frequency-hz /* Rate & BW Control */ {983040000, 245760000, 122880000, 61440000, 30720000, 30720000},//uint32_t rx_path_clock_frequencies[6] *** adi,rx-path-clock-frequencies {983040000, 122880000, 122880000, 61440000, 30720000, 30720000},//uint32_t tx_path_clock_frequencies[6] *** adi,tx-path-clock-frequencies 18000000,//rf_rx_bandwidth_hz *** adi,rf-rx-bandwidth-hz 18000000,//rf_tx_bandwidth_hz *** adi,rf-tx-bandwidth-hz /* RF Port Control */ 0, //rx_rf_port_input_select *** adi,rx-rf-port-input-select 0, //tx_rf_port_input_select *** adi,tx-rf-port-input-select /* TX Attenuation Control */ 10000, //tx_attenuation_mdB *** adi,tx-attenuation-mdB 0, //update_tx_gain_in_alert_enable *** adi,update-tx-gain-in-alert-enable /* Reference Clock Control */ 0, //xo_disable_use_ext_refclk_enable *** adi,xo-disable-use-ext-refclk-enable {8, 5920}, //dcxo_coarse_and_fine_tune[2] *** adi,dcxo-coarse-and-fine-tune 0, //clk_output_mode_select *** adi,clk-output-mode-select /* Gain Control */ 2, //gc_rx1_mode *** adi,gc-rx1-mode 2, //gc_rx2_mode *** adi,gc-rx2-mode 58, //gc_adc_large_overload_thresh *** adi,gc-adc-large-overload-thresh 4, //gc_adc_ovr_sample_size *** adi,gc-adc-ovr-sample-size 47, //gc_adc_small_overload_thresh *** adi,gc-adc-small-overload-thresh 8192, //gc_dec_pow_measurement_duration *** adi,gc-dec-pow-measurement-duration 0, //gc_dig_gain_enable *** adi,gc-dig-gain-enable 800, //gc_lmt_overload_high_thresh *** adi,gc-lmt-overload-high-thresh 704, //gc_lmt_overload_low_thresh *** adi,gc-lmt-overload-low-thresh 24, //gc_low_power_thresh *** adi,gc-low-power-thresh 15, //gc_max_dig_gain *** adi,gc-max-dig-gain /* Gain MGC Control */ 2, //mgc_dec_gain_step *** adi,mgc-dec-gain-step 2, //mgc_inc_gain_step *** adi,mgc-inc-gain-step 0, //mgc_rx1_ctrl_inp_enable *** adi,mgc-rx1-ctrl-inp-enable 0, //mgc_rx2_ctrl_inp_enable *** adi,mgc-rx2-ctrl-inp-enable 0, //mgc_split_table_ctrl_inp_gain_mode *** adi,mgc-split-table-ctrl-inp-gain-mode /* Gain AGC Control */ 10, //agc_adc_large_overload_exceed_counter *** adi,agc-adc-large-overload-exceed-counter 2, //agc_adc_large_overload_inc_steps *** adi,agc-adc-large-overload-inc-steps 0, //agc_adc_lmt_small_overload_prevent_gain_inc_enable *** adi,agc-adc-lmt-small-overload-prevent-gain-inc-enable 10, //agc_adc_small_overload_exceed_counter *** adi,agc-adc-small-overload-exceed-counter 4, //agc_dig_gain_step_size *** adi,agc-dig-gain-step-size 3, //agc_dig_saturation_exceed_counter *** adi,agc-dig-saturation-exceed-counter 1000, // agc_gain_update_interval_us *** adi,agc-gain-update-interval-us 0, //agc_immed_gain_change_if_large_adc_overload_enable *** adi,agc-immed-gain-change-if-large-adc-overload-enable 0, //agc_immed_gain_change_if_large_lmt_overload_enable *** adi,agc-immed-gain-change-if-large-lmt-overload-enable 10, //agc_inner_thresh_high *** adi,agc-inner-thresh-high 1, //agc_inner_thresh_high_dec_steps *** adi,agc-inner-thresh-high-dec-steps 12, //agc_inner_thresh_low *** adi,agc-inner-thresh-low 1, //agc_inner_thresh_low_inc_steps *** adi,agc-inner-thresh-low-inc-steps 10, //agc_lmt_overload_large_exceed_counter *** adi,agc-lmt-overload-large-exceed-counter 2, //agc_lmt_overload_large_inc_steps *** adi,agc-lmt-overload-large-inc-steps 10, //agc_lmt_overload_small_exceed_counter *** adi,agc-lmt-overload-small-exceed-counter 5, //agc_outer_thresh_high *** adi,agc-outer-thresh-high 2, //agc_outer_thresh_high_dec_steps *** adi,agc-outer-thresh-high-dec-steps 18, //agc_outer_thresh_low *** adi,agc-outer-thresh-low 2, //agc_outer_thresh_low_inc_steps *** adi,agc-outer-thresh-low-inc-steps 1, //agc_attack_delay_extra_margin_us; *** adi,agc-attack-delay-extra-margin-us 0, //agc_sync_for_gain_counter_enable *** adi,agc-sync-for-gain-counter-enable /* Fast AGC */ 64, //fagc_dec_pow_measuremnt_duration *** adi,fagc-dec-pow-measurement-duration 260, //fagc_state_wait_time_ns *** adi,fagc-state-wait-time-ns /* Fast AGC - Low Power */ 0, //fagc_allow_agc_gain_increase *** adi,fagc-allow-agc-gain-increase-enable 5, //fagc_lp_thresh_increment_time *** adi,fagc-lp-thresh-increment-time 1, //fagc_lp_thresh_increment_steps *** adi,fagc-lp-thresh-increment-steps /* Fast AGC - Lock Level */ 10, //fagc_lock_level *** adi,fagc-lock-level */ 1, //fagc_lock_level_lmt_gain_increase_en *** adi,fagc-lock-level-lmt-gain-increase-enable 5, //fagc_lock_level_gain_increase_upper_limit *** adi,fagc-lock-level-gain-increase-upper-limit /* Fast AGC - Peak Detectors and Final Settling */ 1, //fagc_lpf_final_settling_steps *** adi,fagc-lpf-final-settling-steps 1, //fagc_lmt_final_settling_steps *** adi,fagc-lmt-final-settling-steps 3, //fagc_final_overrange_count *** adi,fagc-final-overrange-count /* Fast AGC - Final Power Test */ 0, //fagc_gain_increase_after_gain_lock_en *** adi,fagc-gain-increase-after-gain-lock-enable /* Fast AGC - Unlocking the Gain */ /* 0 = MAX Gain, 1 = Optimized Gain, 2 = Set Gain */ 0, //fagc_gain_index_type_after_exit_rx_mode *** adi,fagc-gain-index-type-after-exit-rx-mode 1, //fagc_use_last_lock_level_for_set_gain_en *** adi,fagc-use-last-lock-level-for-set-gain-enable 1, //fagc_rst_gla_stronger_sig_thresh_exceeded_en *** adi,fagc-rst-gla-stronger-sig-thresh-exceeded-enable 5, //fagc_optimized_gain_offset *** adi,fagc-optimized-gain-offset 10, //fagc_rst_gla_stronger_sig_thresh_above_ll *** adi,fagc-rst-gla-stronger-sig-thresh-above-ll 1, //fagc_rst_gla_engergy_lost_sig_thresh_exceeded_en *** adi,fagc-rst-gla-engergy-lost-sig-thresh-exceeded-enable 1, //fagc_rst_gla_engergy_lost_goto_optim_gain_en *** adi,fagc-rst-gla-engergy-lost-goto-optim-gain-enable 10, //fagc_rst_gla_engergy_lost_sig_thresh_below_ll *** adi,fagc-rst-gla-engergy-lost-sig-thresh-below-ll 8, //fagc_energy_lost_stronger_sig_gain_lock_exit_cnt *** adi,fagc-energy-lost-stronger-sig-gain-lock-exit-cnt 1, //fagc_rst_gla_large_adc_overload_en *** adi,fagc-rst-gla-large-adc-overload-enable 1, //fagc_rst_gla_large_lmt_overload_en *** adi,fagc-rst-gla-large-lmt-overload-enable 0, //fagc_rst_gla_en_agc_pulled_high_en *** adi,fagc-rst-gla-en-agc-pulled-high-enable 0, //fagc_rst_gla_if_en_agc_pulled_high_mode *** adi,fagc-rst-gla-if-en-agc-pulled-high-mode 64, //fagc_power_measurement_duration_in_state5 *** adi,fagc-power-measurement-duration-in-state5 /* RSSI Control */ 1, //rssi_delay *** adi,rssi-delay 1000, //rssi_duration *** adi,rssi-duration 3, //rssi_restart_mode *** adi,rssi-restart-mode 0, //rssi_unit_is_rx_samples_enable *** adi,rssi-unit-is-rx-samples-enable 1, //rssi_wait *** adi,rssi-wait /* Aux ADC Control */ 256, //aux_adc_decimation *** adi,aux-adc-decimation 20000000UL, //aux_adc_rate *** adi,aux-adc-rate /* AuxDAC Control */ 1, //aux_dac_manual_mode_enable *** adi,aux-dac-manual-mode-enable 0, //aux_dac1_default_value_mV *** adi,aux-dac1-default-value-mV 0, //aux_dac1_active_in_rx_enable *** adi,aux-dac1-active-in-rx-enable 0, //aux_dac1_active_in_tx_enable *** adi,aux-dac1-active-in-tx-enable 0, //aux_dac1_active_in_alert_enable *** adi,aux-dac1-active-in-alert-enable 0, //aux_dac1_rx_delay_us *** adi,aux-dac1-rx-delay-us 0, //aux_dac1_tx_delay_us *** adi,aux-dac1-tx-delay-us 0, //aux_dac2_default_value_mV *** adi,aux-dac2-default-value-mV 0, //aux_dac2_active_in_rx_enable *** adi,aux-dac2-active-in-rx-enable 0, //aux_dac2_active_in_tx_enable *** adi,aux-dac2-active-in-tx-enable 0, //aux_dac2_active_in_alert_enable *** adi,aux-dac2-active-in-alert-enable 0, //aux_dac2_rx_delay_us *** adi,aux-dac2-rx-delay-us 0, //aux_dac2_tx_delay_us *** adi,aux-dac2-tx-delay-us /* Temperature Sensor Control */ 256, //temp_sense_decimation *** adi,temp-sense-decimation 1000, //temp_sense_measurement_interval_ms *** adi,temp-sense-measurement-interval-ms 0xCE, //temp_sense_offset_signed *** adi,temp-sense-offset-signed 1, //temp_sense_periodic_measurement_enable *** adi,temp-sense-periodic-measurement-enable /* Control Out Setup */ 0xFF, //ctrl_outs_enable_mask *** adi,ctrl-outs-enable-mask 0, //ctrl_outs_index *** adi,ctrl-outs-index /* External LNA Control */ 0, //elna_settling_delay_ns *** adi,elna-settling-delay-ns 0, //elna_gain_mdB *** adi,elna-gain-mdB 0, //elna_bypass_loss_mdB *** adi,elna-bypass-loss-mdB 0, //elna_rx1_gpo0_control_enable *** adi,elna-rx1-gpo0-control-enable 0, //elna_rx2_gpo1_control_enable *** adi,elna-rx2-gpo1-control-enable /* Digital Interface Control */ 1, //pp_tx_swap_enable *** adi,pp-tx-swap-enable 1, //pp_rx_swap_enable *** adi,pp-rx-swap-enable 0, //tx_channel_swap_enable *** adi,tx-channel-swap-enable 0, //rx_channel_swap_enable *** adi,rx-channel-swap-enable 1, //rx_frame_pulse_mode_enable *** adi,rx-frame-pulse-mode-enable 1, //two_t_two_r_timing_enable *** adi,2t2r-timing-enable 0, //invert_data_bus_enable *** adi,invert-data-bus-enable 0, //invert_data_clk_enable *** adi,invert-data-clk-enable 0, //fdd_alt_word_order_enable *** adi,fdd-alt-word-order-enable 0, //invert_rx_frame_enable *** adi,invert-rx-frame-enable 0, //fdd_rx_rate_2tx_enable *** adi,fdd-rx-rate-2tx-enable 0, //swap_ports_enable *** adi,swap-ports-enable 0, //single_data_rate_enable *** adi,single-data-rate-enable 1, //lvds_mode_enable *** adi,lvds-mode-enable 0, //half_duplex_mode_enable *** adi,half-duplex-mode-enable 0, //single_port_mode_enable *** adi,single-port-mode-enable 0, //full_port_enable *** adi,full-port-enable 0, //full_duplex_swap_bits_enable *** adi,full-duplex-swap-bits-enable 0, //delay_rx_data *** adi,delay-rx-data 0, //rx_data_clock_delay *** adi,rx-data-clock-delay 4, //rx_data_delay *** adi,rx-data-delay 7, //tx_fb_clock_delay *** adi,tx-fb-clock-delay 0, //tx_data_delay *** adi,tx-data-delay 150, //lvds_bias_mV *** adi,lvds-bias-mV 1, //lvds_rx_onchip_termination_enable *** adi,lvds-rx-onchip-termination-enable 0, //rx1rx2_phase_inversion_en *** adi,rx1-rx2-phase-inversion-enable /* Tx Monitor Control */ 37000, //low_high_gain_threshold_mdB *** adi,txmon-low-high-thresh 0, //low_gain_dB *** adi,txmon-low-gain 24, //high_gain_dB *** adi,txmon-high-gain 0, //tx_mon_track_en *** adi,txmon-dc-tracking-enable 0, //one_shot_mode_en *** adi,txmon-one-shot-mode-enable 511, //tx_mon_delay *** adi,txmon-delay 8192, //tx_mon_duration *** adi,txmon-duration 2, //tx1_mon_front_end_gain *** adi,txmon-1-front-end-gain 2, //tx2_mon_front_end_gain *** adi,txmon-2-front-end-gain 48, //tx1_mon_lo_cm *** adi,txmon-1-lo-cm 48, //tx2_mon_lo_cm *** adi,txmon-2-lo-cm /* GPIO definitions */ -1, //gpio_resetb; /* reset-gpios */ /* MCS Sync */ -1, //gpio_sync; /* sync-gpios */ -1, //gpio_cal_sw1; /* cal-sw1-gpios */ -1 //gpio_cal_sw2; /* cal-sw2-gpios */ }; 4.程序是使用的官方源码加修改过的SPi读写,另外经过测试SPI读写没有问题 源码是:AD9361 No-OS Software https://github.com/analogdevicesinc/no-OS/tree/master/ad9361/sw |
|
相关推荐
5个回答
|
|
我也遇到同样的问题了,我给的参考时钟是40M,配置BBPLL,但是没有出现980.4MHz的信号,只出现40M的信号。对了我想问你下你配置BBPLL的寄存器的值是??
|
|
|
|
wyerwwr 发表于 2018-12-13 19:07 您好!980.4MHz是BBPLL的VCO输出频率,在外部观察不到,但是可以通过DATA_CLK观察是否已经锁定。或者通过下面的语句:SPIRead 05E // Check BBPLL locked status (0x05E[7]==1 is locked) |
|
|
|
如果一直未锁定,是什么原因造成的呢?
|
|
|
|
我也很想知道,我的情况是,bbpll没有锁定,通过频谱仪观察DATA_CLK信号会出现一个14mhz的信号,强度为4db左右,这是为什么呢? |
|
|
|
您好!DATA_CLK是数字信号,建议使用示波器观察。BBPLL没有锁定,建议核查相关的VCO供电引脚,看供电是否正常。核查晶振输入的连接和信号幅度是否正确。 |
|
|
|
只有小组成员才能发言,加入小组>>
856 浏览 2 评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1308 浏览 2 评论
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1906 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4243 浏览 2 评论
9004 浏览 1 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1433浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1650浏览 2评论
860浏览 2评论
1628浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1308浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 09:02 , Processed in 0.981809 second(s), Total 54, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号