Каталог
|
Цифровой потенциометр служит для регулирования сопротивления с цепях постоянного и переменного тока и, как правило, служит заменой обычным потенциометрам. Цифровой потенциометр состоит из логической цифровой части и блока из 100 резисторов, которые коммутируются сотней полевых транзисторов с изолированными затворами. Использование полевых транзисторов позволяет использовать потенциометр для изменения сопротивления в составе звуковых схем и источников питания. Установленное значение выходного сопротивления запоминается во внутренней энергонезависимой памяти и может храниться в ней не менее 100 лет. Характеристики:
Ссылки: Пример скетча: #define UD 2 #define INC 3 #define CS 4 // поднимает ползунок в верх на 1 шаг void up() { digitalWrite(UD, HIGH); // на U/D подаем единицу digitalWrite(INC, HIGH); // и на INC тоже digitalWrite(CS, LOW); // включаем микросхему delayMicroseconds(1); // ждем digitalWrite(INC, LOW); // дергаем вход INC delayMicroseconds(1); digitalWrite(INC, HIGH); delayMicroseconds(1); //digitalWrite(INC, LOW); // в этом случае положение ползунка записано не будет digitalWrite(CS, HIGH); // выключаем микросхему и записываем положение в EEPROM } // опускаем ползунок в верх на 1 шаг void down() { digitalWrite(UD, LOW); digitalWrite(INC, HIGH); digitalWrite(CS, LOW); delayMicroseconds(1); digitalWrite(INC, LOW); delayMicroseconds(1); digitalWrite(INC, HIGH); delayMicroseconds(1); digitalWrite(CS, HIGH); } void setup() { Serial.begin(9600); pinMode(INC, OUTPUT); pinMode(UD, OUTPUT); pinMode(CS, OUTPUT); digitalWrite(CS, HIGH); // выключаем микросхему } void loop() { if (Serial.available()) // проверяем, что пришло в Serial { if (Serial.read() == '0') // если пришел 0 { down(); // опускаем ползунок Serial.print("-1"); } else // иначе поднимаем { up(); Serial.print("+1"); } } } |