Устарело: низкоуровневая работа с ADC в Wiren Board 2, 3 и 4/en: различия между версиями
(Новая страница: «*Reading the values of the pre-installed channel: <pre> wb-adc-read-channel <A1|A2|A3|A4|R1|R2|R3|R4> (для WB Smart Home, options are similar to the wb-adc-se…») |
FuzzyBot (обсуждение | вклад) м (FuzzyBot переименовал страницу Низкоуровневая работа с ADC/en в Устарело: низкоуровневая работа с ADC в Wiren Board 2, 3 и 4/en без оставления перенаправления: Часть переводимой страницы Низкоуровневая работа с ADC.) |
||
(не показано 13 промежуточных версий 1 участника) | |||
Строка 42: | Строка 42: | ||
=== | === Example === | ||
* | *Set the ADC to measure the voltage at the terminal A3:: | ||
<pre> | <pre> | ||
root@wirenboard:~# wb-adc-set-mux A3 | root@wirenboard:~# wb-adc-set-mux A3 | ||
</pre> | </pre> | ||
* | * Read raw ADC value: | ||
<pre> | <pre> | ||
root@wirenboard:~# wb-adc-get-value | root@wirenboard:~# wb-adc-get-value | ||
Строка 55: | Строка 55: | ||
</pre> | </pre> | ||
* | * Converting the value | ||
<pre> | <pre> | ||
V = 2523 * 4.97 mV = 12539 mV = 12.54 V | V = 2523 * 4.97 mV = 12539 mV = 12.54 V | ||
Строка 63: | Строка 63: | ||
=== | === The convertation of values === | ||
There should be installed a divider by two (not yet installed) on the channel. | |||
Formula for translation: | |||
<pre> | <pre> | ||
V_measured = N / 4095 * 1.85V * (R1+R2)/R2 | V_measured = N / 4095 * 1.85V * (R1+R2)/R2 | ||
Строка 74: | Строка 74: | ||
== | == Acuumulator voltage == | ||
For WB 2.8 and WB 3.5: | |||
<pre> | <pre> | ||
cat /sys/bus/iio/devices/iio:device0/in_voltage7_raw | cat /sys/bus/iio/devices/iio:device0/in_voltage7_raw | ||
</pre> | </pre> | ||
To convert to volts: value/ 4095.0 * 1.85 * 4 . | |||
See the topic on the [http://contactless.ru/forums/topic/%D1%81%D1%82%D0%B0%D1%82%D1%83%D1%81-%D0%B0%D0%BA%D0%BA%D1%83%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80%D0%B0-%D0%B2-linux/ forum]. | |||
For Wiren Board 5, the voltage on the 4V rail is obtained in the same way. |
Текущая версия на 01:35, 29 июля 2022
Reference voltage
The reference voltage of LRADC is 1.85 V. Software installation of 2:1 divider inside the channel is possible.
Work
(make sure the wb-homa-adc daemon is not running):
- Channel selection:
wb-adc-set-mux <channel number> или wb-adc-set-mux <A1|A2|A3|A4|R1|R2|R3|R4> (for WB Smart Home) или wb-adc-set-mux tb<terminal block number> (for WB2.8) или wb-adc-set-mux vin (for WB2.8)
- Reading values:
root@wirenboard:~# cat /sys/bus/iio/devices/iio\:device0/in_voltage1_raw 3838
or
root@wirenboard:~# wb-adc-get-value 3838
- Reading the values of the pre-installed channel:
wb-adc-read-channel <A1|A2|A3|A4|R1|R2|R3|R4> (для WB Smart Home, options are similar to the wb-adc-set-mux)
Example
- Set the ADC to measure the voltage at the terminal A3::
root@wirenboard:~# wb-adc-set-mux A3
- Read raw ADC value:
root@wirenboard:~# wb-adc-get-value 2523
- Converting the value
V = 2523 * 4.97 mV = 12539 mV = 12.54 V
The convertation of values
There should be installed a divider by two (not yet installed) on the channel. Formula for translation:
V_measured = N / 4095 * 1.85V * (R1+R2)/R2
Acuumulator voltage
For WB 2.8 and WB 3.5:
cat /sys/bus/iio/devices/iio:device0/in_voltage7_raw
To convert to volts: value/ 4095.0 * 1.85 * 4 .
See the topic on the forum.
For Wiren Board 5, the voltage on the 4V rail is obtained in the same way.