Arduino и MCP4231 поправьте скетч
- Войдите на сайт для отправки комментариев
Ср, 26/07/2017 - 03:49
Добрый день! помогите со скетчем управления 2-х канального цифрового потенциометра.
Требуется - нажать кнопку, а мср выдаст напряжение. отпустил кнопку напряжение пропало...
подскажите что я делаю не так
Спасибо!
#include <SPI.h>
const byte POT = B00010000;
int csPin=10;
int wheelPin=A5;
int val = 0;
void setup(){
pinMode(csPin, OUTPUT);
pinMode(wheelPin, INPUT);
SPI.begin();
}
void loop(){
val = digitalRead(wheelPin);
if (val == HIGH){
digitalWrite(csPin, LOW);
SPI.transfer(POT);
SPI.transfer(50); // значение сопротивления.
//digitalWrite(csPin, HIGH);
}
else{
digitalWrite(csPin, HIGH);
}
}
#include <SPI.h> const byte POT = B00010000; const byte CS_pin =/*пин CS*/10; const byte Btn_pin =/*пин кнопки*/A5; bool Btn, Btn_old; void setup() { SPI.begin(); pinMode(Btn_pin, INPUT); Btn_old = digitalRead(Btn_pin); pinMode(CS_pin, OUTPUT); } void loop() { Btn = digitalRead(Btn_pin); if (Btn && !Btn_old) { Btn_old = 1; digitalWrite(CS_pin, 0); SPI.transfer(POT); SPI.transfer(50); // значение сопротивления. } else if (!Btn && Btn_old) { Btn_old = 0; digitalWrite(CS_pin, 1); } } /*Скетч использует 1116 байт (3%) памяти устройства. Всего доступно 32256 байт. Глобальные переменные используют 12 байт (0%) динамической памяти, оставляя 2036 байт для локальных переменных. Максимум: 2048 байт. */Спасибо огромное!!!
но почемуто после отпускания кнопки изначальное сопротивление не возвращается (