Цифровой вход

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

Всем привет, так как из за lcd монитора аналоговых выходов у меня остался только 1, начинаю использовать оставшиеся цифровые,хочу вывести на дисплей текст при определенных условиях. Если на цифровой вход 0 подать 5в - то на мониторе должна появится надпись, а если на входе 0в - другая надпись. Написал небольшой код.

int akbLight = 0;

void setup(void) {

  pinMode(akbLight, INPUT);

}

void loop(void) {

  int akb = digitalRead(akbLight);
  tft.setTextColor(WHITE, BLACK);
  tft.setTextSize(4);
  if (akbLight =  HIGH){
    tft.println("++++");
  }
  else if(akbLight = LOW){
    tft.println("----");
    }
  delay(100); 
}

вопрос - сработает? не испорчу ли я плату если подам на цифру 5в ? или же лучше купить аналоговый коммутатор, и выводить все через аналог? 

 

b707
Offline
Зарегистрирован: 26.05.2017

Miha_Axe пишет:

 не испорчу ли я плату если подам на цифру 5в ?

а что за плата?

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

b707 пишет:

Miha_Axe пишет:

 не испорчу ли я плату если подам на цифру 5в ?

а что за плата?

Уно

b707
Offline
Зарегистрирован: 26.05.2017

Miha_Axe пишет:

не испорчу ли я плату если подам на цифру 5в ? или же лучше купить аналоговый коммутатор, и выводить все через аналог? 

странные опасения... А для чего, по вашему, предназначены цифровые входы? :)

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Тока на 0 пине Serial висит

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

b707 пишет:

Miha_Axe пишет:

не испорчу ли я плату если подам на цифру 5в ? или же лучше купить аналоговый коммутатор, и выводить все через аналог? 

странные опасения... А для чего, по вашему, предназначены цифровые входы? :)

Ну да, чет не подумал,сорян.

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

перевел на 13, но так и не заработало.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Miha_Axe пишет:

вопрос - сработает?

Скорее всего сработает, но надо оптимизироваться - ну нахера столько пинов разным непотребством забивать? (А сколько, кстати - я так программу и не увидел). А может часть пинов работает только на вход - так тут и аналоговые можно использовать. Если Вы программу не скопирастили по-наглому, то это будет сделать несложно. И вот еще несколько пинов. И нехера на RXTX лезть!

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Miha_Axe пишет:

перевел на 13, но так и не заработало.

А на 13м висит светодиод со своим резистором

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

mykaida пишет:

Miha_Axe пишет:

вопрос - сработает?

ну нахера столько пинов разным непотребством забивать? 

монитор 2.4 занимает большинство пинов 

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

DetSimen пишет:

А на 13м висит светодиод со своим резистором

Да хер там с 13-м, а остальное как висит? - Виз из тхе квестион!

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Miha_Axe пишет:

монитор 2.4 занимает большинство пинов 

Кому забивает и куда? Мне не забивает.

 

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Miha_Axe этот код даже не откомпилируется потому что ни где не указано что такое tff.

Зачем в цикле постоянно устанавливать цвет и размер шрифта, если они не меняются ?

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

А вот я так и не увидел схемы подключения экрана. Какие входы только на прием? Какие только на выход, а какие толерастны к входу-выходу?

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

Komandir пишет:

Miha_Axe этот код даже не откомпилируется потому что ни где не указано что такое tff?

все компилируется
#include <Adafruit_TFTLCD.h> // Hardware-specific library
Adafruit_TFTLCD tft(LCD_CS, LCD_RS, LCD_WR, LCD_RD, LCD_RESET);
Miha_Axe
Offline
Зарегистрирован: 23.04.2020

mykaida пишет:

А вот я так и не увидел схемы подключения экрана. Какие входы только на прием? Какие только на выход, а какие толерастны к входу-выходу?

вот описание дисплея

https://colorandcode.su/content/24-dyuyma-tft-240320-lcd-displey-ili9341

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

Строки 14 и 17 - ошибка, вместо оператора сравнения используется оператор присваивания. Короче - надо "==", а не "=".

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Выдавайте, гля, полную информацию. А то -экранчик 2,4... - Если SD не нужен - свободны 11 и 12 пины.

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

DIYMan пишет:

Строки 14 и 17 - ошибка, вместо оператора сравнения используется оператор присваивания. Короче - надо "==", а не "=".

все исправил, но не помогло, при подаче 5 вольт ничего не происходит, почему то аналоговые без проблем работают и выводят на монитор инфу, а цифровые не хотят.

ZXPirate
Offline
Зарегистрирован: 18.02.2020

В строках 14 и 17 вместо akbLight надо написать akb так как akbLight это номер пина.

Да и "if(akbLight = LOW)" тут нафиг не нужон.

Miha_Axe
Offline
Зарегистрирован: 23.04.2020

Все заработало, всем спасибо за советы)