Isi kandungan:
- Langkah 1: Keperluan Asas (Tidak Betul)
- Langkah 2: Pembahagi Voltan
- Langkah 3: Tangga Pembahagi Voltan
- Langkah 4: Ringkasan
Video: Cara Membaca Banyak Suis Dengan Satu Pin MCU: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:14
Adakah anda pernah memilih projek dan projek itu terus berkembang dan berkembang, sementara anda menambah lebih banyak perkara (kami menyebutnya sebagai Feur Creaturism)? Pada projek baru-baru ini, saya sedang membina meter frekuensi dan menambahkan penjana isyarat lima fungsi / synthesizer frekuensi. Saya segera mendapat lebih banyak suis daripada pin yang ada, jadi apa yang perlu dilakukan oleh lelaki?
Namun, saya tidak lama lagi mempunyai tujuh suis pada Funbox saya (ya, itulah yang saya panggil penjana fungsi saya … Saya tahu, saya tidak mempunyai kreativiti) dan inilah arahan ringkas yang menunjukkan kepada anda bagaimana anda boleh melakukan perkara yang sama. Ia tidak memerlukan register shift atau IC tertentu. Sebenarnya, ia tidak memerlukan pengawal mikro, sama ada, jika semikonduktor diskrit adalah bagaimana anda melancarkan. Inilah salah satu cara anda dapat membaca / mengurus banyak suis menggunakan satu pin pada AVR anda (atau mikrokontroler lain … Saya pernah mendengar terdapat mikrokontroler lain selain AVR, tetapi saya tidak dapat membayangkan…).:)
Langkah 1: Keperluan Asas (Tidak Betul)
Untuk mencapai ini, anda memerlukan beberapa komponen. Ini membantu untuk mempunyai banyak suis yang harus anda uruskan. Anda juga memerlukan beberapa perintang dan mikrokontroler yang mempunyai ADC (Analog-ke-Digital Conversion) atau cara lain yang ingin anda nyatakan bahawa ada suis diaktifkan dan suis mana yang ada.
Sekiranya anda mahukan, anda boleh menggunakan pengayun voltan untuk menunjukkan ini, mungkin dengan beberapa lampu berkelip, atau sebagai alternatif, dengan bunyi. Dalam ible ini, saya akan berpura-pura menggunakan AVR, tetapi di dunia anda boleh berpura-pura apa sahaja yang membuat anda bahagia. Saya rindukan Bob Ross.
Langkah 2: Pembahagi Voltan
Pada dasarnya, cara kita melakukan ini adalah dengan menggunakan teknik dan litar yang disebut pembahagi voltan. Pembahagi voltan melakukan, seperti yang anda duga, membahagikan voltan V,, in, dengan beberapa nilai yang anda tentukan. Anda boleh membahagikan voltan dengan beberapa komponen, termasuk kapasitor dan induktor, tetapi di sini saya akan melakukannya dengan perintang yang baik. Idea Apa yang kita lakukan ialah meletakkan dua komponen secara bersiri yang akan menyebabkan, masing-masing secara berasingan, penurunan voltan merentasi komponen. Lihat gambar pertama jika saya tidak masuk akal. Terdapat kemungkinan perbezaan 9V dari rel ke rel. Antara 9V dan 0V terdapat dua perintang secara bersiri. Masing-masing akan mengalami penurunan voltan, bergantung pada rintangan, kerana anda mungkin ingat dari V = IR. Sekiranya anda melakukan pengukuran voltan antara kedua-dua perintang, anda akan mendapat beberapa nilai antara 9V dan 0V, bergantung pada berapa banyak voltan yang turun di perintang pertama dan berapa banyak yang tersisa untuk jatuh ke atas perintang ke-2, sebelum 0V. Terdapat formula mudah untuk mengira penurunan voltan merintangi perintang dalam keadaan ini dan kelihatan seperti ini. Biarkan voltan atas perintang 1 (R1) menjadi V1 dan voltan atas perintang dua (R2) menjadi V2. Oleh kerana saya tidak dapat menggunakan pemformatan lagi, lihat gambar 2 di bawah untuk formula… Jadi, di pembahagi resistif kami, voltan Vout dapat ditentukan oleh formula kami untuk V2 (kerana kami akan merujuk GND ke 0V). Apa kaitannya dengan sekumpulan suis yang dikesan dari satu pin? Baiklah, balik halaman dan saya akan tunjukkan!
Langkah 3: Tangga Pembahagi Voltan
Sekarang andaikan kita mempunyai semua suis kita, mungkin enam atau lapan atau enam belas, semuanya dihubungkan melalui perintang yang masing-masing bertindak sebagai pembahagi voltan sehingga apabila keadaan pin suis berubah, voltan dibaca dan berdasarkan tahap voltan, kita boleh tahu suis mana yang baru diaktifkan. Lihat di bawah. Dalam gambar di bawah, saya telah menghubungkan dua blok suis. Blok paling atas mempunyai dua suis, dan blok paling bawah mempunyai lima suis. Anda boleh menyambungkan suis togol, sesaat, taktil, dan lain-lain dengan cara yang sama. Perkara penting yang perlu diperhatikan ialah perintang yang dihubungkan dengan suis anda. Dalam contoh saya, saya hampir menggandakan rintangan perintang seterusnya untuk membuat jurang voltan yang mudah diukur dan tidak salah untuk suis sebelum atau sesudahnya. Sekiranya anda tidak perasan sebelumnya, lihat lagi, dan sedar bahawa kita kembali kepada rakan lama kita pembahagi voltan resistif. Perintang pertama, 10k ohm, disambungkan ke 5V dan perintang ke-2 - perintang yang akan menentukan Vkeluar untuk pin SWITCH_ADC, disambungkan ke setiap suis dan oleh itu, setiap suis dihubungkan dengan voltan Vout tertentu yang dapat dibaca dari pin ADC yang dihubungkan di SWITCH_ADC. Seterusnya, tentukan Vout yang diharapkan dari setiap suis seperti itu
Vout = Vin * (R2 / (R1 + R2))
untuk suis satu:
Vout = 5V * (500 / (10000 + 500)) = 5 * 0.048 = 0.24V atau 240 mV
untuk suis dua:
Vout = 5V * (2200 / (10000 + 2200)) = 5 * 0.18 = 0.9V atau ~ 900mV
dan lain-lain.. Jangan ganti nilai R2 anda sendiri jika anda hanya mempunyai perintang tertentu yang berguna … Yang penting di sini adalah untuk mengekalkan jurang voltan yang cukup luas antara suis sehingga margin kesalahan pada ADC menang ' untuk memasukkan voltan yang diharapkan dari suis tetangga. Saya dapati perkara paling senang dilakukan ialah membina tangga pembahagi dan meletakkan multimeter / voltmeter pada pin ADC dan tekan setiap pin dan lihat nilai apa yang anda dapat. Mereka mesti tepat pada apa yang anda kira. Setelah anda mempunyai semua nilai voltan yang diharapkan dari setiap suis menggunakan perintang tertentu, maka anda boleh meminta MCU anda membaca pin ADC dan membandingkannya dengan nilai yang anda ketahui untuk menentukan suis mana yang ditekan. Sebagai contoh, katakan anda telah mendaftarkan rutin perkhidmatan gangguan yang akan dipanggil setiap kali terdapat perubahan yang dikesan pada pin ADC. Di dalam ISR itu, anda dapat membaca ADC dan membandingkan nilai itu dengan jadual beralih anda. Sekiranya anda menggunakan nilai ADC 8-bit, voltan anda akan ditukar menjadi nombor antara 0 dan 255 yang sepadan dengan voltan antara 0V dan 5V. Ini mengandaikan bahawa anda telah mengkonfigurasi ADC anda dengan cara ini.
Langkah 4: Ringkasan
Jadi, sekarang anda harus tahu bagaimana berhemat menggunakan pin GPIO untuk suis. Setiap kali anda kekurangan pin GPIO, atau hampir tidak mempunyai permulaan, atau jika anda menyedari bahawa anda akan menggunakan sekumpulan suis, pembahagi resistif adalah cara untuk menyelamatkan pin GPIO anda sementara masih menyediakan mekanisme yang kuat untuk mengesan akses suis.
Disyorkan:
Cara Membaca Pelbagai Nilai Analog Menggunakan Satu Pin Analog: 6 Langkah (dengan Gambar)
Cara Membaca Beberapa Nilai Analog Menggunakan Satu Pin Analog: Dalam tutorial ini, saya akan menunjukkan kepada anda cara membaca pelbagai nilai analog dengan hanya menggunakan satu pin input analog
Litar Off Latch Dengan UC. Butang Satu Tekan. Satu Pin. Komponen diskrit: 5 Langkah
Litar Off Latch Dengan UC. Butang Satu Tekan. Satu Pin. Komponen diskrit: Halo semua, sedang mencari litar hidup / mati di jaring. Semua yang saya dapati bukanlah yang saya cari. Saya bercakap dengan diri sendiri, semestinya ada cara untuk itu. Itulah yang saya perlukan.-Hanya satu butang tekan untuk melakukan dan mematikan. -Harus menggunakan
100+ Suis dalam Satu Pin Arduino: 6 Langkah (dengan Gambar)
100+ Suis dalam Satu Pin Arduino: Pengenalan Adakah anda kehabisan pin input? Jangan risau, berikut adalah penyelesaian tanpa register shift. Dalam video ini, kita akan belajar tentang menghubungkan lebih daripada 100 suis ke satu pin Arduino
Cara Membuat Suis Sentuh Menggunakan Satu Mosfet: 4 Langkah (dengan Gambar)
Cara Membuat Suis Sentuh Menggunakan Satu Mosfet: CARA MEMBUAT LALUAN SENTUH MENGGUNAKAN HANYA SATU TRANSISTOR MOSFET Dalam banyak cara, MOSFET lebih baik daripada transistor biasa dan dalam projek transistor hari ini kita akan menunjukkan cara membuat suis sentuh mudah yang akan menggantikan suis biasa dengan h
Suis Membaca Dengan ATtiny2313: 9 Langkah
Membaca Suis Dengan ATtiny2313: Terdapat beberapa Instruksional yang berurusan dengan output dari ATtiny2313 dan peranti AVR yang serupa. Contohnya, https://www.instructables.com/id/Ghetto-Programming%3a-Getting-started-with-AVR-micro/, https://www.instructables.com/id/Drive-a-St