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-нан тікелей басаруа болады, кірістерді босатуа жне/немесе керек жадайда шыыстарды осуа болады. Схеманы арапайым жасау шін, жне іске осылан шыыс санын азайту масатында, біз арапйым схеманы олданамыз. Себебі бадарлама іске осылан стте регистрлар мні мен шыыс мндері айта жазылады.