Мазмуну:

Shift реестрлер каскады 74HC595 Arduino жана Ethernet аркылуу башкарылат: 3 кадам
Shift реестрлер каскады 74HC595 Arduino жана Ethernet аркылуу башкарылат: 3 кадам

Video: Shift реестрлер каскады 74HC595 Arduino жана Ethernet аркылуу башкарылат: 3 кадам

Video: Shift реестрлер каскады 74HC595 Arduino жана Ethernet аркылуу башкарылат: 3 кадам
Video: Сдвиговый регистр 74HC595 как расширитель портов Arduino 2024, Июнь
Anonim
74HC595 Shift реестринин каскады Arduino жана Ethernet аркылуу башкарылат
74HC595 Shift реестринин каскады Arduino жана Ethernet аркылуу башкарылат

Бүгүн мен эки вариантта ишке ашырган долбоорумду сунуштагым келет. Долбоор 74HC595 жана 96 светодиоддордун 12 сменалык регистрлерин, Ethernet калканы Wiznet W5100 менен Arduino Uno тактасын колдонот. Ар бир сменалык регистрге 8 светодиод кошулган. 0-9 сандары LED менен көрсөтүлгөн. Ар бир сменалык регистр 8 чыгаруу терминалы менен жабдылган.

74HC595 4 сменалык регистрлердин ар бири логикалык бирдикти түзөт - 4 орундуу санды тизмектөө үчүн дисплей. Жалпысынан 12 сменалык регистрден турган долбоордо 3 логикалык дисплей бар.

Ишке ашыруу Arduino такталары Nano, Mega, Uno жана Wiznet үй -бүлөсүнүн Ethernet калканчтары жана модулдары үчүн, айрыкча W5100 жана W5500 моделдери үчүн (Ethernet2 китепканасын колдонуу менен) шайкеш келет.

Жабдуулар

  • Arduino Uno / Nano
  • Ethernet Wiznet W5100 / W5500
  • 4кө чейин 12 сменалык регистр 74HC595
  • 32 чейин 96 LED диоддор

1 -кадам: Arduino менен Долбоордо ишке ашырылган:

  • Webserver - HTTP сервери Arduino түз иштейт, HTML кодун чечмелөөгө мүмкүндүк берет
  • WebClient - алыскы серверге HTTP сурамын жөнөтүүгө, маалыматтарды жөнөтүүгө / жүктөөгө жөндөмдүү кардар

Веб -сервер:

  • HTML веб-баракчасын 3 төрт орундуу санды киргизүүгө мүмкүндүк берген форма менен камсыз кылат.
  • Форманы жөнөткөндөн кийин, маалыматтар иштелип чыгат жана EEPROM эстутумунда сакталат, колдонуучуга маалыматтарды иштетүү жөнүндө өзүнчө кошумча баракча кабарлайт.
  • Маалыматты сактагандан кийин, колдонуучу кайра формага багытталат.
  • EEPROM эс тутуму энергияга көз каранды эмес, маалымат калыбына келтирилгенден кийин да жеткиликтүү болот, бирок такта кайра жүктөлөт.
  • Бардык сандар анда 12 74HC595 сменалык регистрлерден турган үч дисплейде көрсөтүлөт.

WebClient:

  • Веб -сервер менен байланыш HTTP протоколунан кийин 5 секунд сайын ишке ашат.
  • Веб-сервер PHP веб-тиркемесин иштетет, ал HTML формасы аркылуу 3 төрт орундуу санды киргизүүгө мүмкүндүк берет.
  • Формадагы маалыматтар MySQL маалымат базасында сакталат.
  • Arduino бул маалымат базасынан серверге суроо аркылуу маалыматтарды алууну суранат.
  • Иштетилген маалыматтар Arduino тарабынан талданат, андан кийин 74HC595 нөөмөт регистрлери аркылуу чийилет.
  • Маалыматтар ошондой эле Arduino EEPROM эстутумунда сакталат, алар веб -серверге туташуу үзүлгөн учурда колдонулат / Arduino такталары кайра жүктөлгөндө, алар нөөмөт регистрлериндеги маалыматтарды алгачкы көрсөтүү үчүн колдонулат.
  • Берилиштер EEPROMдо маалыматтар өзгөргөндө гана жазылат, EEPROM клеткалары керексиз кайра жазуудан сакталат.

2 -кадам: Wiring & Screenshot

Wiring & Screenshot
Wiring & Screenshot
Wiring & Screenshot
Wiring & Screenshot

74HC595 нөөмөт регистрлери үчүн каскад туташуусу (дагы x жолу узартылышы мүмкүн) - TinkerCADдан экспорттоо. Скриншот веб формасы аркылуу, HTML формасы аркылуу маалыматтарды алганда, аларды иштетет жана EEPROM эс тутумуна сактайт.

3 -кадам: 74HC595 + Булак коддору

Диаграммадан сменалык регистрлерди башкаруу үчүн 3 гана маалымат зымы колдонулаары көрүнүп турат:

  • Маалыматтардын чыгышы - (74HC595ке SER)
  • Саат чыгаруу - (74HC595 боюнча SRCLK)
  • Latch Outlet - (74HC595 чейин RCLK)

Ыкчам регистрлер каскадда бириктирилиши мүмкүн, ал эми башка перифериялык түзүлүштөр нөөмөт регистрлери тарабынан башкарылышы мүмкүн - мисалы, күч элементтерин которуу үчүн реле. Ошондой эле бир маалымат чыгаруу менен 500 өзүнчө релени (сменалык регистрлердин жетиштүү саны жана электр энергиясы менен) башкарууга болот.

Реестрлердин чыгышын көзөмөлдөөдө, байт тартибин эң маанилүү битке - MSB FIRST, же LSB - эң аз битке чейин өзгөртүүгө болот. Натыйжада, ал чыгууларды тескери бурат. Бир учурда, мисалы, 7 диод күйгүзүлөт, башка учурда 1 диод киргизүү жана байт тартибине жараша.

Эки ишке тең EEPROM эс тутумун колдонушат, ал электр жарыгы өчкөндөн кийин да же тактаны өчүрүп күйгүзгөндөн кийин да маалыматты сактай алат. Бул эстутумдун экинчи жолу, ошондой эле веб -сервер менен байланышууга мүмкүн болбогон учурда акыркы белгилүү маалыматтарды көрсөтүү мүмкүнчүлүгү (байланыш катасы, сервер).

Эстутум 10 000ден 100 000 транскрипцияга чейин чектелген. Ишке ашыруу эң аз эстутум жүктөмү үчүн иштелип чыккан. Маалыматтар өзгөртүлгөндө алардын үстүнө жазылбайт. Эгерде ошол эле маалыматтар веб -серверден / кардардан окулса, алар EEPROM эстутумуна жазылбайт.

WebClient үчүн программалык камсыздоону (Arduino тарабы) акысыз сынап көрсөңүз болот:

Arduino веб-интерфейс менен байланышат, анда 3 төрт орундуу санды өзгөртүүгө болот:

Веб -сервер катары Arduino кодун сураңыз: [email protected] Көбүрөөк көрсөтмөлөр үчүн кайрымдуулук кылыңыз:

Сунушталууда: