Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
W
wr2rf-vme
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
5
Issues
5
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
wr2rf-vme
Commits
a9f2b2de
Commit
a9f2b2de
authored
Mar 26, 2021
by
Tristan Gingold
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
init.c: fix dac initialization for the api
parent
8130101b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
10 deletions
+24
-10
init.c
software/libwr2rf/init.c
+24
-10
No files found.
software/libwr2rf/init.c
View file @
a9f2b2de
...
...
@@ -163,7 +163,8 @@ libwr2rf_nco_wrcfg (struct libwr2rf_dev *dev, unsigned ch)
return
0
;
}
void
libwr2rf_rf_init
(
struct
libwr2rf_dev
*
dev
)
static
void
libwr2rf_rf_init_dds
(
struct
libwr2rf_dev
*
dev
)
{
/* 3. DDS (ad9910). */
//libwr2rf_dds_spi_init(dev);
...
...
@@ -172,23 +173,29 @@ void libwr2rf_rf_init (struct libwr2rf_dev *dev)
usleep
(
1000
);
libwr2rf_dds_sync_calibrate
(
dev
,
0
);
}
/* 4. RF DAC. */
for
(
unsigned
i
=
0
;
i
<
2
;
i
++
)
{
usleep
(
1000
);
/* 4.1 Init registers. */
libwr2rf_dac_init
(
dev
,
i
);
usleep
(
1000
);
/* 4.2 Set timing for inputs. */
libwr2rf_dac_port_timing
(
dev
,
i
);
}
static
void
libwr2rf_rf_init_dac
(
struct
libwr2rf_dev
*
dev
)
{
/* 4. RF DAC. */
/* 4.1 Init registers. */
libwr2rf_dac_init
(
dev
,
DAC1_CS
);
libwr2rf_dac_init
(
dev
,
DAC2_CS
);
/* 4.2 Set timing for inputs. */
libwr2rf_dac_port_timing
(
dev
,
DAC1_CS
);
libwr2rf_dac_port_timing
(
dev
,
DAC2_CS
);
/* 7. Configure input of IQ DAC (use rfnco). */
libwr2rf_write16
(
dev
,
WR2RF_VME_REGS_CTRL
+
WR2RF_CTRL_REGS_RF1_IQDAC_CTRL
,
0x04
);
libwr2rf_write16
(
dev
,
WR2RF_VME_REGS_CTRL
+
WR2RF_CTRL_REGS_RF2_IQDAC_CTRL
,
0x04
);
}
static
void
libwr2rf_rf_init_rfnco
(
struct
libwr2rf_dev
*
dev
)
{
/* Use network as RFNCO source. */
libwr2rf_write16
(
dev
,
WR2RF_VME_REGS_INIT
+
WR2RF_INIT_REGS_NCO_LOC_OR_WRS
,
0
);
...
...
@@ -199,6 +206,13 @@ void libwr2rf_rf_init (struct libwr2rf_dev *dev)
libwr2rf_nco_wrcfg
(
dev
,
2
);
}
void
libwr2rf_rf_init
(
struct
libwr2rf_dev
*
dev
)
{
libwr2rf_rf_init_dds
(
dev
);
libwr2rf_rf_init_dac
(
dev
);
libwr2rf_rf_init_rfnco
(
dev
);
}
void
libwr2rf_set_wrs_fixed_latency
(
struct
libwr2rf_dev
*
dev
,
unsigned
wr_cycles
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment