Я использую плату SAMD21 Xplained.Я бегу пример DAC предоставленный Atmel Студия: DAC_QUICKSTART1
В заголовке файла, который поставляется с примером (dac_feature.h
), я следующее перечисление:
enum dac_reference {
/** 1V from the internal band-gap reference*/
DAC_REFERENCE_INT1V = DAC_CTRLB_REFSEL(0),
/** Analog V<SUB>CC</SUB> as reference */
DAC_REFERENCE_AVCC = DAC_CTRLB_REFSEL(1),
/** External reference on AREF */
DAC_REFERENCE_AREF = DAC_CTRLB_REFSEL(2),
};
Первоначально, опорное напряжениевнутреннее напряжение 1 В.Я хочу использовать внешнюю ссылку, чтобы выходной сигнал ЦАП мог варьироваться от 0 В до 5 В.
Мой вопрос: как мне на самом деле установить эти настройки?
В том же файле - dac_feature.h
, существует следующая структура:
struct dac_config {
/** Reference voltage */
enum dac_reference reference;
/** Select DAC output */
enum dac_output output;
/** Left adjusted data */
bool left_adjust;
/** GCLK generator used to clock the peripheral */
enum gclk_generator clock_source;
#ifdef FEATURE_DAC_DATABUF_WRITE_PROTECTION
/** Bypass DATABUF write protection */
bool databuf_protection_bypass;
#endif
/** Voltage pump disable */
bool voltage_pump_disable;
/**
* The DAC behaves as in normal mode when the chip enters STANDBY sleep
* mode
*/
bool run_in_standby;
#if (SAMC21)
/** Dither mode enable data */
bool dither_mode;
#endif
};
Здесь создается экземпляр dac_reference
, называемый ссылкой.Я предполагаю, что это то, где это делается, но я все еще не уверен, как.
Любая помощь приветствуется.