Агуулгын хүснэгт:

74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг: 3 алхам
74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг: 3 алхам

Видео: 74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг: 3 алхам

Видео: 74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг: 3 алхам
Видео: Apa itu Digital? Welcome to DigitalWorld - Bit & Byte (Subtittled) 2024, Арваннэгдүгээр
Anonim
74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг
74HC595 Shift бүртгэлийн каскад Arduino болон Ethernet -ээр хянагддаг

Өнөөдөр би хоёр хувилбараар хэрэгжүүлсэн төслийг танилцуулахыг хүсч байна. Төсөл нь 74HC595, 96 LED бүхий 12 ээлжийн регистр, Ethernet бамбайтай Wiznet W5100 бүхий Arduino Uno самбарыг ашигладаг. Ээлжийн бүртгэл бүрт 8 LED холбогдсон байна. 0-9 тоонуудыг LED-ээр дүрсэлсэн болно. Ээлжийн бүртгэл бүр 8 гаралтын терминалаар тоноглогдсон байдаг.

4 ээлжийн бүртгэл бүр 74HC595 нь логик нэгжийг бүрдүүлдэг бөгөөд энэ нь 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 -той хамтран хэрэгжүүлсэн төсөл:

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

Вэб сервер:

  • Дөрвөн оронтой 3 тоог оруулах боломжийг олгодог HTML вэб хуудсыг өгдөг.
  • Маягтыг явуулсны дараа өгөгдлийг боловсруулж EEPROM санах ойд хадгалдаг бөгөөд өгөгдлийг боловсруулах талаар хэрэглэгчид тусдаа дэд хуудсаар мэдээлдэг.
  • Өгөгдлийг хадгалсны дараа хэрэглэгчийг маягт руу буцаана.
  • EEPROM санах ой нь эрчим хүчээс хараат бус бөгөөд өгөгдөл нь цахилгаан сэргээгдсэний дараа ч хүртээмжтэй байдаг, гэхдээ самбарыг дахин асаах болно.
  • Дараа нь бүх тоонуудыг 74HC595 12 ээлжийн бүртгэлээс бүрдсэн гурван дэлгэц дээр харуулав.

WebClient:

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

Алхам 2: Утас ба дэлгэцийн зураг

Утас ба дэлгэцийн агшин
Утас ба дэлгэцийн агшин
Утас ба дэлгэцийн агшин
Утас ба дэлгэцийн агшин

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

Алхам 3: 74HC595 + эх кодууд

Диаграмаас харахад ээлжийн бүртгэлийг хянахад зөвхөн 3 мэдээллийн утас ашигладаг нь тодорхой байна.

  • Мэдээллийн гаралт - (SER 74HC595 хүртэл)
  • Цагны гаралт - (74HC595 дээр SRCLK)
  • Түгжээний гаралт - (74HC595 хүртэл RCLK)

Ээлжийн бүртгэлийг каскад хэлбэрээр нэгтгэж болох бөгөөд бусад дагалдах хэрэгслийг ээлжийн бүртгэлээр хянах боломжтой, жишээлбэл, цахилгаан элементүүдийг солих реле. Мөн нэг өгөгдөл гаргалтаар 500 тусдаа реле (хангалттай тооны ээлжийн бүртгэл, цахилгаан хангамжтай) хянах боломжтой.

Бүртгэлийн гаралтыг хянахдаа байтын дарааллыг хамгийн чухал бит болох MSB FIRST, эсвэл LSB - хамгийн бага ач холбогдолтой бит болгон өөрчлөх боломжтой. Үүний үр дүнд гаралтыг урвуу болгодог. Жишээлбэл, нэг тохиолдолд 7 диод асдаг, нөгөө тохиолдолд оролт ба байтын дарааллаас хамааран 1 диод асдаг.

Хоёр хувилбар хоёулаа EEPROM санах ойг ашигладаг бөгөөд энэ нь цахилгаан тасарсны дараа эсвэл самбар дахин ассаны дараа өгөгдлийг хадгалах боломжтой юм. Энэхүү санах ойн хоёр дахь хэрэглээ нь вэб сервертэй холбогдох боломжгүй тохиолдолд (холболтын алдаа, сервер) хамгийн сүүлийн мэдэгдэж буй өгөгдлийг илэрхийлэх чадвар юм.

Санах ой нь 10,000 -аас 100,000 хүртэлх хуулбараар хязгаарлагддаг. Хэрэгжүүлэлтүүд нь санах ойг хамгийн бага ачаалахад зориулагдсан болно. Өгөгдлийг өөрчлөх үед тэдгээрийг дарж бичихгүй. Хэрэв ижил өгөгдлийг вэб сервер / үйлчлүүлэгчээс уншсан бол тэдгээрийг EEPROM санах ойд дарж бичдэггүй.

WebClient програм хангамжийн хэрэгжилтийг (Arduino тал) https://arduino.php5.sk/register-74hc595.php хаягаар үнэгүй туршиж үзэх боломжтой.

Arduino нь вэб интерфэйсээр холбогддог бөгөөд үүнд дөрвөн оронтой 3 тоог өөрчлөх боломжтой:

Arduino -аас вэб сервер болгон код асууна уу: [email protected] Илүү их зааварчилгаа авахын тулд хандив өгөөрэй:

Зөвлөмж болгож буй: