Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of GA-Test_copy by
decadriver/deca_params_init.c@0:a3b83d366423, 2017-12-06 (annotated)
- Committer:
- aungriah
- Date:
- Wed Dec 06 21:35:45 2017 +0000
- Revision:
- 0:a3b83d366423
test
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
aungriah | 0:a3b83d366423 | 1 | /*! ---------------------------------------------------------------------------- |
aungriah | 0:a3b83d366423 | 2 | * @file deca_params_init.c |
aungriah | 0:a3b83d366423 | 3 | * @brief DW1000 configuration parameters |
aungriah | 0:a3b83d366423 | 4 | * |
aungriah | 0:a3b83d366423 | 5 | * @attention |
aungriah | 0:a3b83d366423 | 6 | * |
aungriah | 0:a3b83d366423 | 7 | * Copyright 2013 (c) Decawave Ltd, Dublin, Ireland. |
aungriah | 0:a3b83d366423 | 8 | * |
aungriah | 0:a3b83d366423 | 9 | * All rights reserved. |
aungriah | 0:a3b83d366423 | 10 | * |
aungriah | 0:a3b83d366423 | 11 | * |
aungriah | 0:a3b83d366423 | 12 | * ------------------------------------------------------------------------------------------------------------------- |
aungriah | 0:a3b83d366423 | 13 | **/ |
aungriah | 0:a3b83d366423 | 14 | #include <stdio.h> |
aungriah | 0:a3b83d366423 | 15 | #include <stdlib.h> |
aungriah | 0:a3b83d366423 | 16 | |
aungriah | 0:a3b83d366423 | 17 | #include "deca_regs.h" |
aungriah | 0:a3b83d366423 | 18 | #include "deca_device_api.h" |
aungriah | 0:a3b83d366423 | 19 | #include "deca_param_types.h" |
aungriah | 0:a3b83d366423 | 20 | |
aungriah | 0:a3b83d366423 | 21 | |
aungriah | 0:a3b83d366423 | 22 | //----------------------------------------- |
aungriah | 0:a3b83d366423 | 23 | // map the channel number to the index in the configuration arrays below |
aungriah | 0:a3b83d366423 | 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 |
aungriah | 0:a3b83d366423 | 25 | const uint8 chan_idx[NUM_CH_SUPPORTED] = {0, 0, 1, 2, 3, 4, 0, 5}; |
aungriah | 0:a3b83d366423 | 26 | |
aungriah | 0:a3b83d366423 | 27 | //----------------------------------------- |
aungriah | 0:a3b83d366423 | 28 | const uint32 tx_config[NUM_CH] = |
aungriah | 0:a3b83d366423 | 29 | { |
aungriah | 0:a3b83d366423 | 30 | RF_TXCTRL_CH1, |
aungriah | 0:a3b83d366423 | 31 | RF_TXCTRL_CH2, |
aungriah | 0:a3b83d366423 | 32 | RF_TXCTRL_CH3, |
aungriah | 0:a3b83d366423 | 33 | RF_TXCTRL_CH4, |
aungriah | 0:a3b83d366423 | 34 | RF_TXCTRL_CH5, |
aungriah | 0:a3b83d366423 | 35 | RF_TXCTRL_CH7, |
aungriah | 0:a3b83d366423 | 36 | }; |
aungriah | 0:a3b83d366423 | 37 | |
aungriah | 0:a3b83d366423 | 38 | //Frequency Synthesiser - PLL configuration |
aungriah | 0:a3b83d366423 | 39 | const uint32 fs_pll_cfg[NUM_CH] = |
aungriah | 0:a3b83d366423 | 40 | { |
aungriah | 0:a3b83d366423 | 41 | FS_PLLCFG_CH1, |
aungriah | 0:a3b83d366423 | 42 | FS_PLLCFG_CH2, |
aungriah | 0:a3b83d366423 | 43 | FS_PLLCFG_CH3, |
aungriah | 0:a3b83d366423 | 44 | FS_PLLCFG_CH4, |
aungriah | 0:a3b83d366423 | 45 | FS_PLLCFG_CH5, |
aungriah | 0:a3b83d366423 | 46 | FS_PLLCFG_CH7 |
aungriah | 0:a3b83d366423 | 47 | }; |
aungriah | 0:a3b83d366423 | 48 | |
aungriah | 0:a3b83d366423 | 49 | //Frequency Synthesiser - PLL tuning |
aungriah | 0:a3b83d366423 | 50 | const uint8 fs_pll_tune[NUM_CH] = |
aungriah | 0:a3b83d366423 | 51 | { |
aungriah | 0:a3b83d366423 | 52 | FS_PLLTUNE_CH1, |
aungriah | 0:a3b83d366423 | 53 | FS_PLLTUNE_CH2, |
aungriah | 0:a3b83d366423 | 54 | FS_PLLTUNE_CH3, |
aungriah | 0:a3b83d366423 | 55 | FS_PLLTUNE_CH4, |
aungriah | 0:a3b83d366423 | 56 | FS_PLLTUNE_CH5, |
aungriah | 0:a3b83d366423 | 57 | FS_PLLTUNE_CH7 |
aungriah | 0:a3b83d366423 | 58 | }; |
aungriah | 0:a3b83d366423 | 59 | |
aungriah | 0:a3b83d366423 | 60 | //bandwidth configuration |
aungriah | 0:a3b83d366423 | 61 | const uint8 rx_config[NUM_BW] = |
aungriah | 0:a3b83d366423 | 62 | { |
aungriah | 0:a3b83d366423 | 63 | RF_RXCTRLH_NBW, |
aungriah | 0:a3b83d366423 | 64 | RF_RXCTRLH_WBW |
aungriah | 0:a3b83d366423 | 65 | }; |
aungriah | 0:a3b83d366423 | 66 | |
aungriah | 0:a3b83d366423 | 67 | |
aungriah | 0:a3b83d366423 | 68 | const agc_cfg_struct agc_config = |
aungriah | 0:a3b83d366423 | 69 | { |
aungriah | 0:a3b83d366423 | 70 | AGC_TUNE2_VAL, |
aungriah | 0:a3b83d366423 | 71 | { AGC_TUNE1_16M , AGC_TUNE1_64M } //adc target |
aungriah | 0:a3b83d366423 | 72 | }; |
aungriah | 0:a3b83d366423 | 73 | |
aungriah | 0:a3b83d366423 | 74 | //DW non-standard SFD length for 110k, 850k and 6.81M |
aungriah | 0:a3b83d366423 | 75 | const uint8 dwnsSFDlen[NUM_BR] = |
aungriah | 0:a3b83d366423 | 76 | { |
aungriah | 0:a3b83d366423 | 77 | DW_NS_SFD_LEN_110K, |
aungriah | 0:a3b83d366423 | 78 | DW_NS_SFD_LEN_850K, |
aungriah | 0:a3b83d366423 | 79 | DW_NS_SFD_LEN_6M8 |
aungriah | 0:a3b83d366423 | 80 | }; |
aungriah | 0:a3b83d366423 | 81 | |
aungriah | 0:a3b83d366423 | 82 | // SFD Threshold |
aungriah | 0:a3b83d366423 | 83 | const uint16 sftsh[NUM_BR][NUM_SFD] = |
aungriah | 0:a3b83d366423 | 84 | { |
aungriah | 0:a3b83d366423 | 85 | { |
aungriah | 0:a3b83d366423 | 86 | DRX_TUNE0b_110K_STD, |
aungriah | 0:a3b83d366423 | 87 | DRX_TUNE0b_110K_NSTD |
aungriah | 0:a3b83d366423 | 88 | }, |
aungriah | 0:a3b83d366423 | 89 | { |
aungriah | 0:a3b83d366423 | 90 | DRX_TUNE0b_850K_STD, |
aungriah | 0:a3b83d366423 | 91 | DRX_TUNE0b_850K_NSTD |
aungriah | 0:a3b83d366423 | 92 | }, |
aungriah | 0:a3b83d366423 | 93 | { |
aungriah | 0:a3b83d366423 | 94 | DRX_TUNE0b_6M8_STD, |
aungriah | 0:a3b83d366423 | 95 | DRX_TUNE0b_6M8_NSTD |
aungriah | 0:a3b83d366423 | 96 | } |
aungriah | 0:a3b83d366423 | 97 | }; |
aungriah | 0:a3b83d366423 | 98 | |
aungriah | 0:a3b83d366423 | 99 | const uint16 dtune1[NUM_PRF] = |
aungriah | 0:a3b83d366423 | 100 | { |
aungriah | 0:a3b83d366423 | 101 | DRX_TUNE1a_PRF16, |
aungriah | 0:a3b83d366423 | 102 | DRX_TUNE1a_PRF64 |
aungriah | 0:a3b83d366423 | 103 | }; |
aungriah | 0:a3b83d366423 | 104 | |
aungriah | 0:a3b83d366423 | 105 | const uint32 digital_bb_config[NUM_PRF][NUM_PACS] = |
aungriah | 0:a3b83d366423 | 106 | { |
aungriah | 0:a3b83d366423 | 107 | { |
aungriah | 0:a3b83d366423 | 108 | DRX_TUNE2_PRF16_PAC8, |
aungriah | 0:a3b83d366423 | 109 | DRX_TUNE2_PRF16_PAC16, |
aungriah | 0:a3b83d366423 | 110 | DRX_TUNE2_PRF16_PAC32, |
aungriah | 0:a3b83d366423 | 111 | DRX_TUNE2_PRF16_PAC64 |
aungriah | 0:a3b83d366423 | 112 | }, |
aungriah | 0:a3b83d366423 | 113 | { |
aungriah | 0:a3b83d366423 | 114 | DRX_TUNE2_PRF64_PAC8, |
aungriah | 0:a3b83d366423 | 115 | DRX_TUNE2_PRF64_PAC16, |
aungriah | 0:a3b83d366423 | 116 | DRX_TUNE2_PRF64_PAC32, |
aungriah | 0:a3b83d366423 | 117 | DRX_TUNE2_PRF64_PAC64 |
aungriah | 0:a3b83d366423 | 118 | } |
aungriah | 0:a3b83d366423 | 119 | }; |
aungriah | 0:a3b83d366423 | 120 | |
aungriah | 0:a3b83d366423 | 121 | const uint16 lde_replicaCoeff[PCODES] = |
aungriah | 0:a3b83d366423 | 122 | { |
aungriah | 0:a3b83d366423 | 123 | 0, // No preamble code 0 |
aungriah | 0:a3b83d366423 | 124 | LDE_REPC_PCODE_1, |
aungriah | 0:a3b83d366423 | 125 | LDE_REPC_PCODE_2, |
aungriah | 0:a3b83d366423 | 126 | LDE_REPC_PCODE_3, |
aungriah | 0:a3b83d366423 | 127 | LDE_REPC_PCODE_4, |
aungriah | 0:a3b83d366423 | 128 | LDE_REPC_PCODE_5, |
aungriah | 0:a3b83d366423 | 129 | LDE_REPC_PCODE_6, |
aungriah | 0:a3b83d366423 | 130 | LDE_REPC_PCODE_7, |
aungriah | 0:a3b83d366423 | 131 | LDE_REPC_PCODE_8, |
aungriah | 0:a3b83d366423 | 132 | LDE_REPC_PCODE_9, |
aungriah | 0:a3b83d366423 | 133 | LDE_REPC_PCODE_10, |
aungriah | 0:a3b83d366423 | 134 | LDE_REPC_PCODE_11, |
aungriah | 0:a3b83d366423 | 135 | LDE_REPC_PCODE_12, |
aungriah | 0:a3b83d366423 | 136 | LDE_REPC_PCODE_13, |
aungriah | 0:a3b83d366423 | 137 | LDE_REPC_PCODE_14, |
aungriah | 0:a3b83d366423 | 138 | LDE_REPC_PCODE_15, |
aungriah | 0:a3b83d366423 | 139 | LDE_REPC_PCODE_16, |
aungriah | 0:a3b83d366423 | 140 | LDE_REPC_PCODE_17, |
aungriah | 0:a3b83d366423 | 141 | LDE_REPC_PCODE_18, |
aungriah | 0:a3b83d366423 | 142 | LDE_REPC_PCODE_19, |
aungriah | 0:a3b83d366423 | 143 | LDE_REPC_PCODE_20, |
aungriah | 0:a3b83d366423 | 144 | LDE_REPC_PCODE_21, |
aungriah | 0:a3b83d366423 | 145 | LDE_REPC_PCODE_22, |
aungriah | 0:a3b83d366423 | 146 | LDE_REPC_PCODE_23, |
aungriah | 0:a3b83d366423 | 147 | LDE_REPC_PCODE_24 |
aungriah | 0:a3b83d366423 | 148 | }; |
aungriah | 0:a3b83d366423 | 149 |