ORFA ADC driver — различия между версиями
=DeaD= (обсуждение | вклад) (Новая страница: «Категория:Open Robotics == Драйвер АЦП == Драйвер позволяющий управлять блоком Аналого-Цифрово...») |
=DeaD= (обсуждение | вклад) (→Примеры (для OR-AVR-M32-D)) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 21: | Строка 21: | ||
'''ВНИМАНИЕ!!! Чтение линий АЦП происходит в автоматическом циклическом режиме, поэтом после конфигурирования АЦП необходимо сделать паузу в ?? перед чтением значений.''' | '''ВНИМАНИЕ!!! Чтение линий АЦП происходит в автоматическом циклическом режиме, поэтом после конфигурирования АЦП необходимо сделать паузу в ?? перед чтением значений.''' | ||
− | ==Примеры== | + | ==Примеры (для OR-AVR-M32-D)== |
+ | '''ВНИМАНИЕ! Все команды должны оканчиваться переводом строки, который означает окончание команды и передачу её на исполнение!''' | ||
− | ===Установить АЦП | + | ===Установить АЦП в 8-битный режим, внутреннее опорное напряжение и включить 0..3 линии АЦП=== |
− | ===Прочитать значения первых 4 линий АЦП | + | ===Прочитать значения первых 4 линий АЦП, настроенного предыдущей командой=== |
Текущая версия на 07:19, 4 ноября 2009
Содержание
Драйвер АЦП
Драйвер позволяющий управлять блоком Аналого-Цифрового Преобразователя (далее АЦП). Пока поддерживается только 8 входов АЦП (весь порт A любого контроллера).
Количество регистров, используемых драйвером - 2. Далее будем считать, что {cc} - первый регистр драйвера, {mm} - второй регистр.
Первый регистр - конфигурационный, в него пишутся 2 байта всегда:
- Настройки АЦП:
- биты 0..1:
- 00 - External reference
- 01 - AVCC
- 10,11 - Internal reference
- бит 2 - режим точности АЦП:
- 0 - 8-битный;
- 1 - 11-битный;
- биты 0..1:
- Маска включаемых в АЦП каналов (8 бит - соотв. 8 линиям порта А);
Второй регистр для чтения результатов - из него читаются 8 байт, если режим 8-битный или 16 байт, если режим 16-битный. Можно читать меньше, но тогда будем знать состояние первых нескольких линий.
ВНИМАНИЕ!!! Чтение линий АЦП происходит в автоматическом циклическом режиме, поэтом после конфигурирования АЦП необходимо сделать паузу в ?? перед чтением значений.
Примеры (для OR-AVR-M32-D)
ВНИМАНИЕ! Все команды должны оканчиваться переводом строки, который означает окончание команды и передачу её на исполнение!