Merge pull request #1038 from kgills/maxwsnenv_analog

MAXWSNENV - Adjusting hal analog.
pull/1054/head
Martin Kojtal 2015-04-17 08:39:59 +01:00
commit 35a93e3f4d
2 changed files with 9 additions and 7 deletions

View File

@ -38,11 +38,11 @@
#include "afe_regs.h"
#include "PeripheralPins.h"
#define PGA_TRK_CNT 0x8
#define PGA_TRK_CNT 0x1F
#define ADC_ACT_CNT 0x1
#define ADC_PGA_CNT 0x1
#define ADC_ACQ_CNT 0x1
#define ADC_SLP_CNT 0x0
#define ADC_SLP_CNT 0x1
//******************************************************************************
void analogin_init(analogin_t *obj, PinName pin)
@ -100,6 +100,12 @@ uint16_t analogin_read_u16(analogin_t *obj)
mux_pos = (obj->adc_pin & 0xF) + 8;
}
// Reset the ADC
obj->adc->ctrl0 |= MXC_F_ADC_CTRL0_CPU_ADC_RST;
// Enable the ADC
obj->adc->ctrl0 |= MXC_F_ADC_CTRL0_CPU_ADC_EN;
// Setup the ADC clock
MXC_SET_FIELD(&obj->adc->ctrl0, (MXC_F_ADC_CTRL0_ADC_MODE | MXC_F_ADC_CTRL0_AVG_MODE |
MXC_F_ADC_CTRL0_ADC_CLK_MODE | MXC_F_ADC_CTRL0_ADC_BI_POL),
@ -119,9 +125,6 @@ uint16_t analogin_read_u16(analogin_t *obj)
(MXC_F_AFE_CTRL1_REF_ADC_POWERUP | MXC_F_AFE_CTRL1_REF_BLK_POWERUP |
(MXC_E_AFE_REF_VOLT_SEL_1500 << MXC_F_AFE_CTRL1_REF_ADC_VOLT_SEL_POS)));
// Enable the ADC
obj->adc->ctrl0 |= MXC_F_ADC_CTRL0_CPU_ADC_EN;
// Clear the done bit
obj->adc->intr = MXC_F_ADC_INTR_DONE_IF;

View File

@ -183,8 +183,7 @@ void analogout_write_u16(dac_t *obj, uint16_t value)
MXC_F_DAC_CTRL0_CLOCK_GATE_EN | MXC_F_DAC_CTRL0_CPU_START);
if(obj->index < 2) {
// Convert 16 bits to 12 bits
obj->out = (value >> 4);
obj->out = (value);
obj->dac_fifo->output_16 = (obj->out);
} else {