Statistics
| Branch: | Tag: | Revision:

amiro-lld / drivers / DW1000 / v2 / decadriver / deca_params_init.c @ 22401187

History | View | Annotate | Download (2.99 KB)

1 22401187 Thomas Schöpping
/*! ----------------------------------------------------------------------------
2
 *  @file    deca_params_init.c
3
 *  @brief   DW1000 configuration parameters
4
 *
5
 * @attention
6
 *
7
 * Copyright 2013 (c) Decawave Ltd, Dublin, Ireland.
8
 *
9
 * All rights reserved.
10
 *
11
 *
12
 * -------------------------------------------------------------------------------------------------------------------
13
**/
14
#include <stdio.h>
15
#include <stdlib.h>
16
17
#include "deca_regs.h"
18
#include "deca_device_api.h"
19
#include "deca_param_types.h"
20
21
22
//-----------------------------------------
23
// map the channel number to the index in the configuration arrays below
24
// 0th element is chan 1, 1st is chan 2, 2nd is chan 3, 3rd is chan 4, 4th is chan 5, 5th is chan 7
25
const uint8 chan_idx[NUM_CH_SUPPORTED] = {0, 0, 1, 2, 3, 4, 0, 5};
26
27
//-----------------------------------------
28
const uint32 tx_config[NUM_CH] =
29
{
30
    RF_TXCTRL_CH1,
31
    RF_TXCTRL_CH2,
32
    RF_TXCTRL_CH3,
33
    RF_TXCTRL_CH4,
34
    RF_TXCTRL_CH5,
35
    RF_TXCTRL_CH7,
36
};
37
38
//Frequency Synthesiser - PLL configuration
39
const uint32 fs_pll_cfg[NUM_CH] =
40
{
41
    FS_PLLCFG_CH1,
42
    FS_PLLCFG_CH2,
43
    FS_PLLCFG_CH3,
44
    FS_PLLCFG_CH4,
45
    FS_PLLCFG_CH5,
46
    FS_PLLCFG_CH7
47
};
48
49
//Frequency Synthesiser - PLL tuning
50
const uint8 fs_pll_tune[NUM_CH] =
51
{
52
    FS_PLLTUNE_CH1,
53
    FS_PLLTUNE_CH2,
54
    FS_PLLTUNE_CH3,
55
    FS_PLLTUNE_CH4,
56
    FS_PLLTUNE_CH5,
57
    FS_PLLTUNE_CH7
58
};
59
60
//bandwidth configuration
61
const uint8 rx_config[NUM_BW] =
62
{
63
    RF_RXCTRLH_NBW,
64
    RF_RXCTRLH_WBW
65
};
66
67
68
const agc_cfg_struct agc_config =
69
{
70
    AGC_TUNE2_VAL,
71
    { AGC_TUNE1_16M , AGC_TUNE1_64M }  //adc target
72
};
73
74
//DW non-standard SFD length for 110k, 850k and 6.81M
75
const uint8 dwnsSFDlen[NUM_BR] =
76
{
77
    DW_NS_SFD_LEN_110K,
78
    DW_NS_SFD_LEN_850K,
79
    DW_NS_SFD_LEN_6M8
80
};
81
82
// SFD Threshold
83
const uint16 sftsh[NUM_BR][NUM_SFD] =
84
{
85
    {
86
        DRX_TUNE0b_110K_STD,
87
        DRX_TUNE0b_110K_NSTD
88
    },
89
    {
90
        DRX_TUNE0b_850K_STD,
91
        DRX_TUNE0b_850K_NSTD
92
    },
93
    {
94
        DRX_TUNE0b_6M8_STD,
95
        DRX_TUNE0b_6M8_NSTD
96
    }
97
};
98
99
const uint16 dtune1[NUM_PRF] =
100
{
101
    DRX_TUNE1a_PRF16,
102
    DRX_TUNE1a_PRF64
103
};
104
105
const uint32 digital_bb_config[NUM_PRF][NUM_PACS] =
106
{
107
    {
108
        DRX_TUNE2_PRF16_PAC8,
109
        DRX_TUNE2_PRF16_PAC16,
110
        DRX_TUNE2_PRF16_PAC32,
111
        DRX_TUNE2_PRF16_PAC64
112
    },
113
    {
114
        DRX_TUNE2_PRF64_PAC8,
115
        DRX_TUNE2_PRF64_PAC16,
116
        DRX_TUNE2_PRF64_PAC32,
117
        DRX_TUNE2_PRF64_PAC64
118
    }
119
};
120
121
const uint16 lde_replicaCoeff[PCODES] =
122
{
123
    0, // No preamble code 0
124
    LDE_REPC_PCODE_1,
125
    LDE_REPC_PCODE_2,
126
    LDE_REPC_PCODE_3,
127
    LDE_REPC_PCODE_4,
128
    LDE_REPC_PCODE_5,
129
    LDE_REPC_PCODE_6,
130
    LDE_REPC_PCODE_7,
131
    LDE_REPC_PCODE_8,
132
    LDE_REPC_PCODE_9,
133
    LDE_REPC_PCODE_10,
134
    LDE_REPC_PCODE_11,
135
    LDE_REPC_PCODE_12,
136
    LDE_REPC_PCODE_13,
137
    LDE_REPC_PCODE_14,
138
    LDE_REPC_PCODE_15,
139
    LDE_REPC_PCODE_16,
140
    LDE_REPC_PCODE_17,
141
    LDE_REPC_PCODE_18,
142
    LDE_REPC_PCODE_19,
143
    LDE_REPC_PCODE_20,
144
    LDE_REPC_PCODE_21,
145
    LDE_REPC_PCODE_22,
146
    LDE_REPC_PCODE_23,
147
    LDE_REPC_PCODE_24
148
};
149
150
151