From 12ef59c562f0bfa5b7f9f4ac808a7d340adab9de Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期一, 11 三月 2024 14:20:43 +0800 Subject: [PATCH] 微功率版本 --- Src/decadriver/deca_device.c | 30 ++++++++++++++++++++++++------ 1 files changed, 24 insertions(+), 6 deletions(-) diff --git a/Src/decadriver/deca_device.c b/Src/decadriver/deca_device.c index 04fc341..6b8935d 100644 --- a/Src/decadriver/deca_device.c +++ b/Src/decadriver/deca_device.c @@ -147,6 +147,23 @@ // // Spi_ChangePrescaler(SPI_BAUDRATEPRESCALER_8); //} +#define DWT_LNA_PA_DISABLE 0x00 +#define DWT_LNA_ENABLE 0x01 +#define DWT_PA_ENABLE 0x02 +void dwt_setlnapamode(int lna_pa) +{ + uint32_t gpio_mode = dwt_read32bitoffsetreg(GPIO_CTRL_ID, GPIO_MODE_OFFSET); + gpio_mode &= ~(GPIO_MSGP4_MASK | GPIO_MSGP5_MASK | GPIO_MSGP6_MASK); + if (lna_pa & DWT_LNA_ENABLE) + { + gpio_mode |= GPIO_PIN6_EXTRXE; + } + if (lna_pa & DWT_PA_ENABLE) + { + gpio_mode |= (GPIO_PIN5_EXTTXE | GPIO_PIN4_EXTPA); + } + dwt_write32bitoffsetreg(GPIO_CTRL_ID, GPIO_MODE_OFFSET, gpio_mode); +} #define LDOTUNE_ADDRESS (0x04) #define PARTID_ADDRESS (0x06) #define LOTID_ADDRESS (0x07) @@ -232,12 +249,13 @@ // Read system register / store local copy dw1000local.sysCFGreg = dwt_read32bitreg(SYS_CFG_ID) ; // Read sysconfig register { - uint32_t reg; - reg = dwt_read32bitreg(GPIO_CTRL_ID); - reg |= 0x00014000; - reg |= 0x00050000; - dwt_write32bitreg(GPIO_CTRL_ID,reg); - dwt_write16bitoffsetreg(PMSC_ID,PMSC_TXFINESEQ_OFFSET ,PMSC_TXFINESEQ_DIS_MASK); + dwt_setlnapamode(DWT_LNA_ENABLE); +// uint32_t reg; +// reg = dwt_read32bitreg(GPIO_CTRL_ID); +// reg |= 0x00014000; +// reg |= 0x00050000; +// dwt_write32bitreg(GPIO_CTRL_ID,reg); +// dwt_write16bitoffsetreg(PMSC_ID,PMSC_TXFINESEQ_OFFSET ,PMSC_TXFINESEQ_DIS_MASK); } // CheckCPUID(); -- Gitblit v1.9.3