Arduino-да сұйық кристалды индикаторды (LCD) қалай қосады?

Негізгі техникалық сипаттамасы:

- Дисплей: символдық 16х02

- Жарығы: көк ақ белгілермен

- Контраст: потенциометр көмегімен тураланады

- Қуат кернеуі: 5В

- Интерфейс: І2С

- І2С адресі: 0х27

Өлшемі: 82мм x 35мм x 18мм

I2C — 2м сым арқылы байланыс орнатылатын құрылғылар стандарты, параллельді жалғанған құрылғылар саны шексіз көп болуы мүмкін. Әр-бір құрылғының жеке адресі бар, сол арқылы оған байланыс орнатылады. Адресін өзгертуге болады, егер де құрылғыда перемычкалар болатын болса. Және сол арқылы базалық адресті жылжытуға болады.

Arduino-ға қосу:

Модуль 2.54мм стандартты 4-пинді разъеммем жабдықталған;

SCL: тізбекті тактілеу линиясы (Serial CLock)

SDA: тізбекті мәліметтер линиясы (Serial DAta)

VCC: "+" қуаты

GND: "-" қуаты

SCL A5

SDA A4

VCC +5V

GND GND

Модулмен жұмыс жасау үшін LiquidCrystal_I2C кітапханасын орнату қажет.

Ол үшін бұл кітапхананы жүктеп, Arduino -> libraries папкасына орналастыруымыз керек. Кейін іске қосамыз.

Скетч: //Стандартты "Hello, world!" мәтінін экран бетіне шығарайық:

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); /* Дисплейдің адресін және өлшемін береміз. LCD I2C модулін 20х04 дисплейде қолданған уақытта, ешқандай өзгеріс енгізудің қажеті жоқ. */

void setup()

{

lcd.init(); // lcd-ді инициализациялау

lcd.backlight(); // жарықты қосамыз

// Курсор 1 жолдың басында орналасады

lcd.print("Hello, world!"); // Мәтінді енгіземіз

lcd.setCursor(0, 1); // Курсорды 2 жолдың басына орналастырамыз

lcd.print("zelectro.cc"); // Мәтінді енгіземіз

}

void loop()

{

}

61. 74HC595 жылжыту регистрын пайдалану арқылы шығыстарды көбейтуге болатынын түсіндіру (бір регистрмен мысал келтіру)

Егер де бізге Arduino контроллерінде көптеген шығыс (пиндер) қажет болса, жылжыту регистрын пайдаланамыз. Мысал ретінде 74HC595жылжыту регистрын қарастырамыз.

74HC595 — сегіз разрядты тізбекті кірісі бар жылжыту регистрі, тізбекті немесе параллельді шығыс ақпараты бар, защелка триггері бар және шығыста үш негізгі күйі бар.

Басқа сөзбен айтқанда бұл регистр 8 шығысты басқаруға мүмкін береді, ал контроллерді ол тек бірнеше болуы мүмкін. Мұндай бірнеше регистрді каскадтау үшін тізбекті байланыстыруға болады. Бұған сәйкес келетін регистрлерді «595» және «596» комбинациясы арқылы сериялық номірі бойынша табуға болады. Мысалы, STP16C596 регистрі қосымша резистоларды қолданбай, бір мезетте 16 светодиодты басқаруға мүмкіндік береді.

1-7, 15 пиндары Q0 " Q7 Параллельді шығыстар
Пин 8 GND Жер
Пин 9 Q7" Регисторлардың тізбекті байланыстыру шығысы
Пин 10 MR Регистр мәнін босату. LOW мәнін қабылдаған жағдайда болады.
Пин 11 SH_CP Тактілі импульстер үшін шығыс
Пин 12 ST_CP Шығыстардың синронизациясы("защелкивание")
Пин 13 OE Жоғары омды күйден жұмыс жасайтын омға ауыстыратын кіріс
Пин 14 DS Тізбекті мәліметтер үшін кіріс
Пин 16 Vcc Қуат

Бір регистрмен мысал:

Қосылуы:

GND (пин 8) жерге қосамыз

Vcc (пин 16) 5В-ке

OE (пин 13) жерге

MR (пин 10) 5В-ке

Сонымен, регистрге қуат жіберіп, барлық шығыстарды іске қостық. Бұл қосылудың қарапайым түрі, себебі схемаға қуат беру барысында шығыстарда кездейсоқ мәндер болады. MR және OE пиндерін Arduino-нан тікелей басқаруға болады, кірістерді босатуға және/немесе керек жағдайда шығыстарды қосуға болады. Схеманы қарапайым жасау үшін, және іске қосылған шығыс санын азайту мақсатында, біз қарапйым схеманы қолданамыз. Себебі бағдарлама іске қосылған сәтте регистрлар мәні мен шығыс мәндері қайта жазылады.

Наши рекомендации