Добрый день,
Данный вопрос уже рассматривался на форуме, но я предлагаю вынести его отдельно и обсудить следующее.
------------------------
Вот что я понял из всего прочитанного по ADC ESP8266:
-----------------------------------
1) точность измерения напряжения.
Согласно документации для точного измерения мы должны использовать
команду system_get_vdd33 чтобы измерить напряжение на pin3 и pin4.
это значение должно быть установлено в 107 байт esp_init_data_default.bin
Так как напряжение может быть в диапазоне 1.8-3.6, то значение в 107 байте может быть в диапазоне 18-36.
Таким образом, дискретность измерения опорного напряжения 0.1 в.
Т е, если реальное напряжение не установлено с точностью до 0.1 в,
то неточность установки будет ошибкой измерения значения ADC на pin 6
----------------------------------------
2) Время преобразования (быстродействие)
Возьмем программу, предоставленную Г-ном pvvx:
A)--------------------------
//Correction adders z - 21:
void read_sar_dout(uint16 * buf)
{
volatile uint32 * sar_regs = &SAR_BASE[32]; // 8 regs 0x60000D80...
int i;
for(i = 0; i < 8; i++) {
int x = ~(*sar_regs++);
int z = (x & 0xFF) - 21;
x &= 0x700;
if(z > 0) x = ((z * 279) >> 8) + x;
buf = x;
}
}
что делается в этой программе я пока не понял
Вопросы:
1) что означают константы 279, 21
2) зачем двигать на байт результат ADC если z>0
B)----------------------
uint16 sar_dout, tout, sardata[8];
read_sar_dout(sardata);
for (i = 0; i < 8; i++) {
sar_dout += sardata;
ADC_DBG("%d, ", sardata);
}
--------------------------
Программа суммирует 8 значений полученных на выходе ADC.
Т е это не 8 значений одного измерения ADC , а сумма 8-ми измерений.
Согласно результатам, полученным Г-ном pvvx ,
время получение результата функции read_sar_dout
составляет примерно 20 мкс.
Но это не одно значение ADC, а восемь.
Таким образом, получаем, что время преобразования ADC составляет примерно 2.5 мкс.
Но в качестве результата мы получаем среднее от 8 значений ADC.
------------------------
Это лишь мое понимание и непонимание.
-------------------------------
"Хотелось бы услышать начальника транспортного цеха."
Данный вопрос уже рассматривался на форуме, но я предлагаю вынести его отдельно и обсудить следующее.
------------------------
Вот что я понял из всего прочитанного по ADC ESP8266:
-----------------------------------
1) точность измерения напряжения.
Согласно документации для точного измерения мы должны использовать
команду system_get_vdd33 чтобы измерить напряжение на pin3 и pin4.
это значение должно быть установлено в 107 байт esp_init_data_default.bin
Так как напряжение может быть в диапазоне 1.8-3.6, то значение в 107 байте может быть в диапазоне 18-36.
Таким образом, дискретность измерения опорного напряжения 0.1 в.
Т е, если реальное напряжение не установлено с точностью до 0.1 в,
то неточность установки будет ошибкой измерения значения ADC на pin 6
----------------------------------------
2) Время преобразования (быстродействие)
Возьмем программу, предоставленную Г-ном pvvx:
A)--------------------------
//Correction adders z - 21:
void read_sar_dout(uint16 * buf)
{
volatile uint32 * sar_regs = &SAR_BASE[32]; // 8 regs 0x60000D80...
int i;
for(i = 0; i < 8; i++) {
int x = ~(*sar_regs++);
int z = (x & 0xFF) - 21;
x &= 0x700;
if(z > 0) x = ((z * 279) >> 8) + x;
buf = x;
}
}
что делается в этой программе я пока не понял
Вопросы:
1) что означают константы 279, 21
2) зачем двигать на байт результат ADC если z>0
B)----------------------
uint16 sar_dout, tout, sardata[8];
read_sar_dout(sardata);
for (i = 0; i < 8; i++) {
sar_dout += sardata;
ADC_DBG("%d, ", sardata);
}
--------------------------
Программа суммирует 8 значений полученных на выходе ADC.
Т е это не 8 значений одного измерения ADC , а сумма 8-ми измерений.
Согласно результатам, полученным Г-ном pvvx ,
время получение результата функции read_sar_dout
составляет примерно 20 мкс.
Но это не одно значение ADC, а восемь.
Таким образом, получаем, что время преобразования ADC составляет примерно 2.5 мкс.
Но в качестве результата мы получаем среднее от 8 значений ADC.
------------------------
Это лишь мое понимание и непонимание.
-------------------------------
"Хотелось бы услышать начальника транспортного цеха."
Последнее редактирование: