Isi kandungan:

Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet: 3 Langkah
Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet: 3 Langkah

Video: Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet: 3 Langkah

Video: Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet: 3 Langkah
Video: Стартовый комплект Elegoo Arduino Uno Super — что внутри? 2024, Julai
Anonim
Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet
Cascade of Shift Register 74HC595 Dikendalikan Melalui Arduino dan Ethernet

Hari ini saya ingin membentangkan projek yang telah saya laksanakan dalam dua versi. Projek ini menggunakan 12 shift shift 74HC595 dan 96 LED, papan Arduino Uno dengan perisai Ethernet Wiznet W5100. 8 LED disambungkan ke setiap daftar shift. Nombor 0-9 diwakili oleh LED. Setiap daftar shift dilengkapi dengan 8 terminal output.

Setiap satu dari 4 register shift 74HC595 membentuk unit logik - paparan untuk menyenaraikan nombor 4 digit. Secara keseluruhan, terdapat 3 paparan logik dalam projek yang terdiri daripada 12 register shift.

Pelaksanaannya serasi untuk papan Arduino Nano, Mega, Uno dan untuk pelindung Ethernet dan modul dari keluarga Wiznet, khususnya model W5100 dan W5500 (menggunakan perpustakaan Ethernet2).

Bekalan

  • Arduino Uno / Nano
  • Ethernet Wiznet W5100 / W5500
  • 4 hingga 12 shift shift 74HC595
  • 32 hingga 96 diod LED

Langkah 1: Pelaksanaan yang Dilaksanakan dalam Projek Bersama Arduino:

  • Webserver - Pelayan HTTP berjalan terus di Arduino, memungkinkan untuk mentafsirkan kod HTML
  • WebClient - Pelanggan yang mampu membuat permintaan HTTP ke pelayan jauh, menghantar / memuat turun data

Pelayan laman web:

  • Menyediakan halaman web HTML dengan borang yang membolehkan anda memasukkan 3 nombor empat digit.
  • Setelah mengirim borang, data diproses dan disimpan dalam memori EEPROM, pengguna diberitahu tentang pemprosesan data oleh sub halaman yang terpisah.
  • Setelah menyimpan data, pengguna diarahkan kembali ke borang.
  • Memori EEPROM bebas tenaga, data dapat diakses walaupun selepas pemulihan kuasa, tetapi juga dimulakan semula papan.
  • Semua nombor kemudian ditunjukkan pada tiga paparan yang terdiri daripada 12 register geser 74HC595.

Pelanggan Web:

  • Komunikasi dengan pelayan web berlaku setiap 5 saat selepas protokol
  • Pelayan web menjalankan aplikasi web PHP yang membolehkan anda memasukkan 3 nombor empat digit melalui borang HTML.
  • Data dari borang disimpan dalam pangkalan data MySQL.
  • Arduino meminta untuk mengambil data dari pangkalan data ini melalui pertanyaan ke pelayan.
  • Data yang diproses diuraikan oleh Arduino, kemudian diplot menggunakan shift register 74HC595.
  • Data juga disimpan dalam memori EEPROM Arduino, mereka digunakan sekiranya sambungan ke pelayan web gagal / ketika papan Arduino dimulakan semula, mereka digunakan untuk rendering awal data pada register shift.
  • Data ditimpa di EEPROM hanya apabila data berubah, sel EEPROM disimpan dari penimpaan yang tidak perlu.

Langkah 2: Pendawaian & Tangkapan Skrin

Pendawaian & Tangkapan Skrin
Pendawaian & Tangkapan Skrin
Pendawaian & Tangkapan Skrin
Pendawaian & Tangkapan Skrin

Sambungan lata untuk daftar pergeseran 74HC595 (dapat diperpanjang dengan x lebih banyak lagi) - Eksport dari TinkerCAD. Tangkapan skrin ada dari antara muka pelayan web, apabila ia mendapat data melalui bentuk HTML, memprosesnya, dan menyimpannya ke memori EEPROM.

Langkah 3: 74HC595 + Kod Sumber

Jelas dari rajah bahawa hanya 3 wayar data yang digunakan untuk mengawal register shift:

  • Outlet Data - (SER hingga 74HC595)
  • Output jam - (SRCLK pada 74HC595)
  • Latch Outlet - (RCLK hingga 74HC595)

Shift register dapat digabungkan dalam lata, sementara periferal lain juga dapat dikendalikan oleh shift shift - misalnya, relay untuk menukar elemen daya. Juga dimungkinkan untuk mengendalikan 500 geganti terpisah (dengan jumlah register geser dan bekalan kuasa yang mencukupi) dengan satu output data.

Semasa mengawal output dari daftar, juga dimungkinkan untuk mengubah urutan bait ke bit yang paling signifikan - MSB PERTAMA, atau ke LSB - bit yang paling tidak signifikan. Akibatnya, ia membalikkan output. Dalam satu kes, misalnya, 7 diod menyala, dalam kes lain 1 diod bergantung pada input dan susunan bait.

Kedua-dua implementasi menggunakan memori EEPROM, yang dapat menyimpan data walaupun selepas gangguan kuasa atau setelah papan ulang dimulakan. Penggunaan kedua memori ini juga merupakan kemampuan untuk mewakili data terakhir yang diketahui sekiranya tidak dapat berkomunikasi dengan pelayan web (ralat sambungan, pelayan).

Memori terhad kepada 10, 000 hingga 100, 000 transkrip. Pelaksanaan dirancang untuk beban memori yang paling sedikit. Data tidak akan ditimpa apabila diubah. Sekiranya data yang sama dibaca dari pelayan web / pelanggan, data tersebut tidak akan ditimpa dalam memori EEPROM.

Pelaksanaan perisian (sisi Arduino) untuk WebClient boleh dicuba secara percuma di:

Arduino berkomunikasi dengan antara muka web di mana mungkin untuk mengubah 3 nombor empat digit:

Minta kod untuk Arduino sebagai pelayan laman web di: [email protected] untuk lebih banyak arahan:

Disyorkan: