Mundarija:

Shift registrlari kaskadi 74HC595 Arduino va Ethernet orqali boshqariladi: 3 qadam
Shift registrlari kaskadi 74HC595 Arduino va Ethernet orqali boshqariladi: 3 qadam

Video: Shift registrlari kaskadi 74HC595 Arduino va Ethernet orqali boshqariladi: 3 qadam

Video: Shift registrlari kaskadi 74HC595 Arduino va Ethernet orqali boshqariladi: 3 qadam
Video: 74HC595 Seven Segment 2 Digits LED Display with decimal points for Arduino 2024, Noyabr
Anonim
74HC595 Shift registrlari kaskadi Arduino va Ethernet orqali boshqariladi
74HC595 Shift registrlari kaskadi Arduino va Ethernet orqali boshqariladi

Bugun men ikkita versiyada amalga oshirgan loyihamni taqdim qilmoqchiman. Loyihada 74HC595 va 96 LEDli 12 ta smenali registrlar, Ethernet qalqoni Wiznet W5100 o'rnatilgan Arduino Uno taxtasi ishlatiladi. Har bir smenada registrga 8 ta LED ulangan. 0-9 raqamlari LEDlar bilan ifodalanadi. Har bir smenada 8 ta chiqish terminali o'rnatilgan.

74HC595 4 smenali registrlarning har biri mantiqiy birlikni - 4 xonali raqamni ro'yxatga olish uchun displeyni tashkil qiladi. Hammasi bo'lib, loyihada 12 ta smenali registrlardan iborat 3 ta mantiqiy displey mavjud.

Amaliyotlar Arduino platalari Nano, Mega, Uno va Wiznet oilasining chekilgan qalqoni va modullari uchun mos keladi, xususan W5100 va W5500 modellari (Ethernet2 kutubxonasi yordamida).

Ta'minotlar

  • Arduino Uno / Nano
  • Ethernet Wiznet W5100 / W5500
  • 4 ta 12 smagacha registr 74HC595
  • 32 dan 96 gacha LED diodli

1 -qadam: Arduino yordamida loyihada amalga oshirilgan ishlar:

  • Veb -server - to'g'ridan -to'g'ri Arduino -da ishlaydigan HTTP -server HTML kodini talqin qilish imkonini beradi
  • WebClient - masofaviy serverga HTTP so'rovini yuborish, ma'lumotlarni yuborish / yuklab olish qobiliyatiga ega mijoz

Veb -server:

  • 3 ta to'rt xonali raqamni kiritishga imkon beradigan formadagi HTML veb-sahifasini taqdim etadi.
  • Shakl yuborilgandan so'ng, ma'lumotlar qayta ishlanadi va EEPROM xotirasida saqlanadi, foydalanuvchiga ma'lumotlarni qayta ishlash haqida alohida pastki sahifa orqali xabar beriladi.
  • Ma'lumotni saqlagandan so'ng, foydalanuvchi yana shaklga yo'naltiriladi.
  • EEPROM xotirasi energiyadan mustaqil, ma'lumotni qayta tiklashdan keyin ham olish mumkin, lekin kartani qayta ishga tushirish ham mumkin.
  • Keyin barcha raqamlar 12 ta 74HC595 smenali registrlardan iborat uchta displeyda aks ettirilgan.

WebClient:

  • Veb -server bilan aloqa HTTP protokolidan keyin har 5 soniyada amalga oshiriladi.
  • Veb-server PHP veb-ilovasini ishga tushiradi, bu sizga HTML shakli orqali 3 ta to'rt xonali raqamni kiritish imkonini beradi.
  • Formadagi ma'lumotlar MySQL ma'lumotlar bazasida saqlanadi.
  • Arduino serverdan so'rov orqali ushbu ma'lumotlar bazasidan ma'lumotlarni olishni so'raydi.
  • Qayta ishlangan ma'lumotlar Arduino tomonidan tahlil qilinadi va 74HC595 smenali registrlar yordamida tuziladi.
  • Ma'lumotlar, shuningdek, Arduino -ning EEPROM xotirasida saqlanadi, ular veb -serverga ulanish uzilgan taqdirda / Arduino platalari qayta ishga tushirilganda, ular ma'lumot almashish registrlarida ma'lumotlarni birinchi marta ko'rsatish uchun ishlatiladi.
  • Ma'lumotlar EEPROMda faqat ma'lumotlar o'zgarganda qayta yoziladi, EEPROM hujayralari keraksiz qayta yozishdan saqlanadi.

2 -qadam: simlar va ekran tasvirlari

Simlar va skrinshot
Simlar va skrinshot
Simlar va skrinshot
Simlar va skrinshot

74HC595 smenali registrlar uchun kaskadli ulanish (yana ko'p marta uzaytirilishi mumkin) - TinkerCAD -dan eksport qilish. Skrinshot veb -server interfeysi orqali mavjud bo'lib, u HTML formati orqali ma'lumotlarni oladi, ularni qayta ishlaydi va EEPROM xotirasida saqlaydi.

3 -qadam: 74HC595 + manba kodlari

Diagrammadan ko'rinib turibdiki, smenali registrlarni boshqarish uchun atigi 3 ta ma'lumot simlari ishlatiladi:

  • Ma'lumotlar chiqishi - (74HC595 ga SER)
  • Soat chiqishi - (74HC595 da SRCLK)
  • Mandal chiqishi - (74HC595 gacha RCLK)

Shift registrlari kaskadda birlashtirilishi mumkin, boshqa periferiya qurilmalari esa smenali registrlar yordamida boshqarilishi mumkin - masalan, quvvat elementlarini almashtirish uchun o'rni. Shuningdek, bitta ma'lumot chiqishi bilan 500 ta alohida o'rni (etarli miqdordagi smenali registrlar va quvvat manbai bilan) boshqarilishi mumkin.

Registrlarning chiqishlarini nazorat qilishda, shuningdek, bayt tartibini eng muhim bitga o'zgartirish mumkin - MSB FIRST yoki LSB - eng kam ahamiyatli bit. Natijada, u chiqishlarni teskari aylantiradi. Bir holatda, masalan, 7 diod yonadi, boshqa holatda kirish va bayt tartibiga qarab 1 diod.

Ikkala dastur ham EEPROM xotirasidan foydalanadi, u ma'lumotlarni uzib qo'ygandan keyin ham yoki kartani qayta ishga tushirgandan keyin ham saqlay oladi. Bu xotiradan ikkinchi foydalanish, shuningdek, veb -server bilan bog'lanish imkoni bo'lmagan taqdirda, ma'lum bo'lgan oxirgi ma'lumotlarni ko'rsatish qobiliyatidir (ulanish xatosi, server).

Xotira 10 000 dan 100 000 gacha transkriptlar bilan cheklangan. Amaliyotlar imkon qadar kam xotira yuklanishi uchun mo'ljallangan. Ma'lumotlar o'zgartirilganda ularning ustiga yozilmaydi. Agar bir xil ma'lumotlar veb -server / mijozdan o'qilsa, ular EEPROM xotirasida yozilmaydi.

WebClient uchun dasturiy ta'minotni (Arduino tomoni) bepul sinab ko'rish mumkin:

Arduino veb-interfeysi bilan bog'lanadi, unda uchta to'rt xonali raqamni o'zgartirish mumkin:

Arduino uchun kodni veb -server sifatida so'rang: [email protected] Ko'proq ko'rsatmalarni bering:

Tavsiya: