Isi kandungan:

NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC: 6 Langkah (dengan Gambar)
NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC: 6 Langkah (dengan Gambar)

Video: NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC: 6 Langkah (dengan Gambar)

Video: NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC: 6 Langkah (dengan Gambar)
Video: Размер структур и классов в программах на ESP8266 2024, Julai
Anonim
NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC
NODEMCU LUA ESP8266 Dengan MCP23017 16 Bit Port Expander IC

MCP23017 adalah IC yang agak mudah untuk dibuat papan kerana mempunyai Port A dan B di kedua sisi cip dan pin berada dalam urutan berurutan.

Begitu juga bas alamat I2C.

Terdapat 2 pin pada IC ini yang tidak digunakan kerana setanding dengan MCP23S17 yang menggunakan antara muka SPI di mana pin ini digunakan.

Lembar data untuk IC ini boleh didapati dari Microchip.

Langkah 1: Diagram Litar

Rajah Litar
Rajah Litar

Gambarajah litar menunjukkan cara menyambungkan IC ke ESP8266

CATATAN: IC beroperasi antara 2.7 dan 5.5 Volt.

Pin Sambungan di papan saya

  • Pin 9 (VDD) hingga 3v3
  • Pin 18 (RESET) hingga 3v3
  • Pin 17 (A2) ke GND
  • Pin 16 (A1) ke GND
  • Pin 15 (A0) ke GND
  • Pin 14 (NC) ke GND (Tidak perlu)
  • Pin 13 (SDA) ke ESP GPIO0
  • Pin 12 (SCL) ke ESP GPIO2
  • Pin 11 (NC) ke GND (Tidak perlu)
  • Pin 10 (VSS) ke GND

Langkah 2: Membuat Papan Utama

Membuat Papan Utama
Membuat Papan Utama

Papannya lurus ke depan untuk dibuat seperti yang dijelaskan di atas, semuanya adalah susun atur yang sederhana.

Papan utama saya mengambil sedikit masa untuk dibuat dan ditunjukkan di atas.

Anda tentu saja boleh membina litar ini di papan roti.

Langkah 3: Papan Tambahan

Papan Tambahan
Papan Tambahan

Saya telah membuat beberapa papan 8 bit tambahan yang mudah dipasang ke papan projek yang berbeza.

Papan pertama disambungkan ke paparan LED 7 segmen dan disambungkan pin 1 ke segmen a, pin 2 hingga b dll. Terdapat perintang kecil (sekitar 55 ohm) untuk melindungi LED.

Yang kedua ialah bank suis 8 yang semuanya bersambung dan boleh disambungkan ke 3.3V atau arde. Saya tidak memasukkan sebarang perintang penarik kerana MCP23017 memasangkannya.

Yang ketiga adalah dari kit Ebay, ia terdiri daripada 8 LED dan array perintang dengan sambungan ke Gnd. Saya juga mempunyai papan yang sama tetapi memasang LED sebaliknya sehingga menyambung ke 3.3V atau 5V dan bukannya Gnd. Di Ebay mereka dikenali sebagai Kit DIY LED 8 Channel Flowing Water Light, 99p dari China.

Langkah 4: Pengaturcaraan

Pengaturcaraan
Pengaturcaraan

Saya telah menulis program untuk berfungsi dengan ESP01 kerana ini hanya mempunyai 2 pin I / O. Sudah tentu ia boleh digunakan dengan mana-mana papan ESP8266. Pin SDA & SCL boleh dialokasikan ke pin mana-mana antara 1 dan 12.

Sekiranya menggunakan versi LUA yang lebih lama (mis. NodeMCU 0.9.6 build 20150704 yang dikuasakan oleh Lua 5.1.4) I2C sudah terpasang. Jika tidak, anda perlu memastikan bahawa modul I2C termasuk dalam binaan anda.

Saya telah memasukkan 3 program Lua sederhana untuk menunjukkan bagaimana IC boleh digunakan.

7Segment.lua menggerakkan paparan LED dan urutan antara nombor 1 hingga 0.

KittCar.lua menggerakkan papan LED 8 untuk mensimulasikan kereta terkenal dari tahun 80-an.

Reader.lua membaca dari Pelabuhan B.

Langkah 5: Pin mana?

Pin mana?
Pin mana?

Program tambahan yang saya buat semasa bermain-main.

Ia menggunakan port B sebagai input dan port A sebagai output. Foto menunjukkan suis DIP, tetapi anda boleh menyambungkan salah satu pin port B ke Gnd dan paparan LED akan menunjukkan pin mana yang disambungkan.

CATATAN: Ia hanya berfungsi dengan 1 pin pada satu masa!

Langkah 6: Kesimpulannya

Kesimpulannya
Kesimpulannya

Sudah tentu ada pengembang I / O lain yang tersedia. Sebilangannya 8 bit, 16 bit dan bahkan 24 bit! Semua berfungsi dengan cara yang serupa dengan MCP23017, tetapi IC ini sangat murah kerana kemampuannya dan boleh diperoleh sekitar 10p setiap satu dari China.

Saya tidak menggunakan semua ciri IC ini kerana terdapat gangguan juga yang boleh digunakan. Membaca lembaran data memberitahu semua tentang daftar dan cara IC yang berbeza dapat digunakan.

Ada kemungkinan 8 peranti ini berada di bas I2C yang sama yang memberikan 128 port I / O yang semuanya dikawal oleh 2 talian. Fikirkan kemungkinan di sana!

Disyorkan: